简体   繁体   English

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

[英]How to select volume mountpoint in docker-compose.yml?

I need to mount volume /path/a from one container to /path/b in another container, but according to documentation only HOST:CONTAINER or HOST:CONTAINER:ro allowed to write in VOLUMES section. 我需要挂载体积/path/a从一个容器到/path/b在另一容器中,但根据文档HOST:CONTAINERHOST:CONTAINER:ro允许写VOLUMES部。

Any ideas how to do that in docker-compose.yml? 任何想法如何在docker-compose.yml中做到这一点?

You could create a volume on the host with a bind mount for both containers. 您可以在主机上使用两个容器的绑定挂载创建卷。

Example: 例:

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

Same with docker-compose.yml : docker-compose.yml相同:

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

And for the other container: 对于另一个容器:

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

Alternative solution: 替代解决方案:

Create a data volume container! 创建一个数据卷容器!

Example: 例:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何使用docker-compose.yml文件命名卷? - How to name a volume using a docker-compose.yml file? 如何在 docker-compose.yml 中为命名卷设置主机路径 - How to set a path on host for a named volume in docker-compose.yml 在 docker-compose.yml 卷中为 Docker Swarm 安装 OpenMediaVault NFS - Mount OpenMediaVault NFS in docker-compose.yml volume for Docker Swarm 如何通过在 docker-compose.yml 文件中定义卷来访问 docker 容器内生成的文件 - How to access the file generated inside docker container by defining the volume in docker-compose.yml file 如何在 Docker 中检查卷是否存在且不为空,并根据此运行不同的 docker-compose.yml? - How to check in Docker whether a volume exists and is not empty and run different docker-compose.yml depending on this? 如何使用 docker-compose.yml 中的值将文件添加到 Docker 映像中的卷? - How can I add a file to a volume in a Docker image, using values from the docker-compose.yml? docker-compose.yml在以点(。)开头的文档上使用卷 - docker-compose.yml use volume on documents starting with dot (.) 错误:在文件“ ./docker-compose.yml”中,卷必须是映射,而不是数组 - ERROR: In file './docker-compose.yml', volume must be a mapping, not an array docker-compose.yml:指定 tmpfs 卷时出错 - docker-compose.yml: Error while specifying a tmpfs volume 在文件 './docker-compose.yml' 中,卷必须是映射,而不是数组 - In file './docker-compose.yml', volume must be a mapping, not an array
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM