Docker撰写 - 在几个容器和主机上装载卷

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker撰写 - 在几个容器和主机上装载卷相关的知识,希望对你有一定的参考价值。

我试图使用docker-compose在几个容器和主机之间共享数据。我有一个docker-compose.yml文件,如下所示:

version: '3'
services:
  base:
    container_name: base
    build: 
      context: .
      dockerfile: BaseDockerfile
    volumes:
      - dependencies:/volumes/dependencies
  romee:
    container_name: romee
    build: 
      context: .
      dockerfile: RomeeDockerfile
    environment:
      - PYTHONPATH=/volumes/base_dependencies/
    volumes:
      - dependencies:/volumes/base_dependencies   

volumes:
    dependencies:

现在容器之间已成功共享卷“依赖项”,但我还希望与主机共享它。我怎样才能做到这一点?

答案

该问题等同于如何指定命名卷的路径:

解:

volumes:
  dependencies:
    driver: local
    driver_opts:
      type: 'none'
      o: 'bind'
      device: '/abs/path/to/dependencies'

编辑

完整的流程就像,

Image:依赖关系生成器,在构建时(docker build),生成依赖于/ temp,然后在运行时(docker run / docker-compose up),cp -pr /temp /dependencies,之后它可以退出0。

以上是关于Docker撰写 - 在几个容器和主机上装载卷的主要内容,如果未能解决你的问题,请参考以下文章

docker-tmpfs挂载

Docker 基础知识 - 使用卷(volume)管理应用程序数据

更改后容器上的 Docker 卷更新,但主机中没有任何反应

Docker 撰写卷权限 linux

在主机上更改挂载卷中的文件时,不会在 docker 容器中触发文件系统事件

在 CoreOS 主机之间移动 docker 数据卷容器