如何在docker-compose.yml中select卷挂载点?

我需要将volume /path/a从一个容器挂载到另一个容器中的/path/b ,但是仅根据文档 HOST:CONTAINERHOST:CONTAINER:ro允许写入VOLUMES部分。

任何想法如何在docker-compose.yml中做到这一点?

您可以使用两个容器的绑定挂载在主机上创build一个卷。

例:

 mkdir -p /mnt/shared-volume docker run --name container1 -v /mnt/shared-volume:/path/a mycontainer docker run --name container2 -v /mnt/shared-volume:/path/b mycontainer 

docker-compose.yml

 volumes: - /mnt/shared-volume:/path/a 

而对于另一个容器:

 volumes: - /mnt/shared-volume:/path/b 

替代scheme:

创build一个数据卷容器!

例:

 docker run --name datacontainer -v /mnt/shared-volume mycontainer /bin/true docker run --name container1 --volumes-from datacontainer mycontainer docker run --name container2 --volumes-from datacontainer mycontainer