您能否提供一个使用 volumes_from
从容器 A 到容器 B 共享路径的示例,以及容器 B 在共享完成后如何访问该路径。
谢谢
最佳答案
如文档所述 volumes如果您在 version 3
中,则可以使用 顶级卷
将命名卷定义为以下 db-data
ee 代码,您可以在每个服务中引用它,如下所示:
version: "3"
services:
web:
nginx:alpine
ports:
- "80:80"
postgres:
image: postgres:9.4
volumes:
- db-data:/var/lib/db
backup:
image: postgres:9.4
volumes:
- db-data:/var/lib/backup/data
redis:
image: redis
ports:
- "6379:6379"
volumes:
- ./data:/data
volumes:
db-data:
version 2.0:
volumes_from
允许您从其他服务或容器挂载所有数据或卷,您必须指定访问级别 volumes from在你的代码中你可以使用这样的东西:
version: "2"
services:
web:
image: nginx:alpine
ports:
- "80:80"
volumes_from:
- redis:rw
postgres:
image: postgres:9.4
volumes:
- /data/webapp
backup:
image: postgres:9.4
volumes:
- /var/lib/backup/data
redis:
image: redis
ports:
- "6379:6379"
volumes:
- /data/db
redis
上面的代码定义一个卷服务,然后你可以在另一个容器中使用,例如 web
和 volumes_from
看起来像 web 服务使用该卷服务指定 read 和 write
关于docker-compose volumes_from 使用示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45494746/