【发布时间】:2016-02-29 13:43:22
【问题描述】:
我正在尝试创建一个包含--volumes-from 指令的 docker-compose.yml 文件。有人知道语法吗?
我已经在网上找了一段时间了,看来--volumes-from 命令只能作为 docker 命令使用。我希望我错了。
【问题讨论】:
标签: docker docker-compose dockerfile
我正在尝试创建一个包含--volumes-from 指令的 docker-compose.yml 文件。有人知道语法吗?
我已经在网上找了一段时间了,看来--volumes-from 命令只能作为 docker 命令使用。我希望我错了。
【问题讨论】:
标签: docker docker-compose dockerfile
2016 年 2 月:
从另一个服务或容器装载所有卷,可选择指定只读访问(ro)或读写(rw)。
(如果没有指定访问级别,则使用读写。)
volumes_from:
- service_name
- service_name:ro
- container:container_name
- container:container_name:rw
例如(from this issue 或 this one)
version: "2"
services:
...
db:
image: mongo:3.0.8
volumes_from:
- dbdata
networks:
- back
links:
- dbdata
dbdata:
image: busybox
volumes:
- /data/db
注意 2017 年 8 月:docker-compose version 3, regarding volumes:
顶级 volumes 键定义了一个命名卷,并从每个服务的卷列表中引用它。
这将替换 Compose 文件格式的早期版本中的volumes_from。有关卷的一般信息,请参阅 Use volumes 和 Volume Plugins。
例子:
version: "3.2"
services:
web:
image: nginx:alpine
volumes:
- type: volume
source: mydata
target: /data
volume:
nocopy: true
- type: bind
source: ./static
target: /opt/app/static
db:
image: postgres:latest
volumes:
- "/var/run/postgres/postgres.sock:/var/run/postgres/postgres.sock"
- "dbdata:/var/lib/postgresql/data"
volumes:
mydata:
dbdata:
此示例显示了一个由
web服务使用的命名卷 (mydata),以及为单个服务定义的绑定挂载(db服务卷下的第一个路径)。
db服务还使用名为dbdata的命名卷(db服务卷下的第二条路径),但使用旧字符串格式定义它以安装命名卷。命名卷必须列在顶级卷键下,如图所示。
【讨论】: