docker-compose volumes_from usage example

时间:2017-08-03 21:24:04

标签: docker docker-compose

请您提供一个示例,使用volumes_from从容器A到容器B共享路径,此外,容器B在共享完成后如何访问此路径。

由于

2 个答案:

答案 0 :(得分:16)

正如文档所说[{3}}如果您在version 3,可以使用The top-level volumes将命名卷定义为下面的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:
  

版本2.0:

volumes_from允许您从其他服务或容器装载所有数据或卷,您必须在代码中指定文档所说的volumes的访问级别,您可以使用以下内容:

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_fromread and write看起来像Web服务使用该卷服务指定访问级别{{ 1}}

答案 1 :(得分:0)

这是个小虫子:

...
web:
  nginx:alpine
  ports:
  - "80:80"
...

应该是

...
web:
  image: nginx:alpine
  ports:
  - "80:80"
...