在两个容器之间共享 /tmp

Jui*_*icy 6 docker docker-compose

我正在使用docker-compose生成两个容器。我想/tmp在这两个容器之间共享目录(但/tmp如果可能的话,不与主机共享)。这是因为我通过上传一些文件flask/tmp并想从处理这些文件celery

flask:
    build: .
    command: "gulp"
    ports:
        - '3000:3000'
        - '5000:5000'
    links:
        - celery    
        - redis
    volumes:
        - .:/usr/src/app:rw

celery:
    build: .
    command: "celery -A web.tasks worker --autoreload --loglevel=info"
    environment:
        - C_FORCE_ROOT="true"
    links:
        - redis
        - neo4j
    volumes:
        - .:/usr/src/app:ro
Run Code Online (Sandbox Code Playgroud)

BMi*_*tch 4

您可以使用命名卷:

flask:
    build: .
    command: "gulp"
    ports:
        - '3000:3000'
        - '5000:5000'
    links:
        - celery    
        - redis
    volumes:
        - .:/usr/src/app:rw
        - tmp:/tmp

celery:
    build: .
    command: "celery -A web.tasks worker --autoreload --loglevel=info"
    environment:
        - C_FORCE_ROOT="true"
    links:
        - redis
        - neo4j
    volumes:
        - .:/usr/src/app:ro
        - tmp:/tmp
Run Code Online (Sandbox Code Playgroud)

当 compose 为第一个容器创建卷时,它将使用映像中 /tmp 的内容进行初始化。之后,它将被持久化,直到被删除docker-compose down -v