我使用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
答案 0 :(得分: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
当compose为第一个容器创建卷时,它将使用图像中的/ tmp内容进行初始化。之后,它将一直持续到docker-compose down -v
删除。