docker-compose volumes_from 使用示例

标签 docker docker-compose

您能否提供一个使用 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 上面的代码定义一个卷服务,然后你可以在另一个容器中使用,例如 webvolumes_from 看起来像 web 服务使用该卷服务指定 read 和 write

的访问级别

关于docker-compose volumes_from 使用示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45494746/

相关文章:

docker - 构建镜像后Docker不安装Composer依赖项

docker - 有什么办法可以隔离应用程序而无需在Cygwin Windows下使用容器

docker - 什么是docker-compose中的docker run -e等效项

docker - 使用docker-compose up时访问docker-compose.yml文件内的环境变量

docker - docker :错误:无法删除一个或多个图像

mysql - docker-compose 中的 MariaDB 卷清除数据

Docker inside wsl2 和 Docker desktop 的区别

docker - 使用 minikube 的 HostPath - Kubernetes

reactjs - 使用Docker时如何隐藏React启动欢迎消息

docker - “network_mode: host”无法访问容器