在两个容器之间共享/ tmp

我使用docker-compose来产生两个容器。 我想共享这两个容器之间的/tmp目录(如果可能的话,不要与host /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 

您可以使用命名卷:

 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为第一个容器创build卷时,它将使用映像中的/ tmp的内容进行初始化。 在此之后,它将被持久性直到被docker-compose down -v删除。