【发布时间】:2018-05-18 17:32:04
【问题描述】:
给定一个像下面这样的docker-compose.yml 文件,我正在寻找一种方法,让服务a 和b 都可以访问由合并 内容组成的共享卷两个容器。
version: '3'
volumes:
shared-merged-volume:
services:
a:
volumes:
- shared-merged-volume:/shared
b:
volumes:
- shared-merged-volume:/shared
假设服务a 在/shared/dir-from-a 有一个目录,而服务b 有一个类似的/shared-dir-from-b 目录。期望的结果是:
$ ls /shared # from either container
dir-from-a
dir-from-b
我发现其中一个容器“获胜”并且这两个目录中只有一个存在。我可以像这样解决这个问题,但更冗长,如果目录内容发生变化,则需要修改:
version: '3'
volumes:
service-a-shared-volume:
service-b-shared-volume:
services:
a:
volumes:
- service-a-shared-volume:/shared/dir-from-a
- service-b-shared-volume:/shared/dir-from-b
b:
volumes:
- service-a-shared-volume:/shared/dir-from-a
- service-b-shared-volume:/shared/dir-from-b
提前感谢您的帮助!
【问题讨论】:
-
您找到解决此问题的有效方法了吗?
标签: docker docker-compose