首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用码头容器作为其他容器的文件系统

使用码头容器作为其他容器的文件系统
EN

Server Fault用户
提问于 2016-07-31 01:37:03
回答 1查看 107关注 0票数 2

这个问题表面上似乎有一个简单的答案“卷”,虽然我相信它可能比这更复杂。

解释

我们有三个服务,每个服务都可以有多个容器在单个或多个主机上运行。

容器A是我们的API容器

容器B是我们的队列容器

容器C是我们的任务计划(cron)容器。

所有这些容器都运行在相同的git-repo /源代码(PHP)上。唯一的区别是在容器中运行的进程:

容器A正在运行php-fpm

容器B正在运行一个队列监视守护进程(手工队列)

容器C正在运行执行任何cron任务的crontab

目前,我们在dockerfile中为每个“服务”下载git并启动相关进程。不过,最好有一个“数据”容器,以某种方式为所有上述提到的容器提供代码服务。

问题

我们如何为其他容器创建一个充当“代码存储库”的容器?将源文件从其文件系统安装到其他“服务”容器的文件系统中?

EN

回答 1

Server Fault用户

发布于 2016-07-31 04:12:46

这样做的首选方法是使用指定的卷:

代码语言:javascript
运行
复制
version: '2'

volumes:
  data:
    driver: local

services:
  service-1:
    build: .
    image: my-service:latest
    volumes:
      - data:/data

  service-2:
    image: my-service:latest
    volumes:
      - data:/data

要使用数据容器,您需要在该容器上有卷,然后在其他容器中挂载那些卷:

代码语言:javascript
运行
复制
version: '2'

services:
  data:
    build: .
    image: my-service:latest
    command: /bin/true
    volumes:
      - /data

  service-1:
    image: my-service:latest
    volumes-from:
      - data

  service-2:
    image: my-service:latest
    volumes-from:
      - data
票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/797296

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档