在docker-compose.yml文件中复制“docker volume create --name data”命令

7
我正在使用docker-compose构建我的容器,我想使用Docker的新卷API,但我不知道如何做。
我希望能够通过docker-compose up -d来实现以下功能:
  • 创建一个卷,如果已经创建则使用它。
  • 使用先前卷容器中的数据创建服务容器。

请查看Compose文件文档,特别是关于卷和volumes_from的部分:https://docs.docker.com/compose/compose-file/#volumes-volume-driver - Mark O'Connor
1个回答

15
首先,您必须使用版本2的Compose文件来使用新规范创建和使用命名卷。Compose File Reference包含了您需要知道的所有内容,包括示例。
总结如下:
  1. version: '2'添加到docker-compose.yml的顶部。
  2. 将服务单元放置在services:键下。
  3. 将卷单元放置在volumes:键下。
  4. 当从服务单元引用命名卷时,请指定volumename:/path,其中volumename是在volumes:键下给出的名称(在下面的示例中为dbdata),而/path是挂载卷的容器内位置(例如,/var/lib/mysql)。
这是一个创建命名卷dbdata并从db服务引用它的最小示例。
version: '2'
services:
  db:
    image: mysql
    volumes:
      - dbdata:/var/lib/mysql
volumes:
  dbdata:
    driver: local

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接