我有两个项目。对于所有这些,我都为DEV环境创建了docker-compose.yml。
最初,我与项目1合作,一切都很好。但是然后我为项目2构建了镜像,并且docker以某种方式将nginx镜像从项目1缓存到了项目。
因此,我在目录/etc/nginx/conf.d/中找到了来自项目1的项目2文件的容器。
项目1和项目2对于nginx具有相似的docker-compose.yml和Dockerfile。
我如何防止这种行为? docker 如何缓存图像数据?
docker-compose.yml
...
nginx:
build: ./docker/dev/nginx
ports:
- "5000:80"
volumes:
- ./:/application
links:
- php
php:
build: ./docker/dev/php
volumes:
- ./:/application
links:
- mariadb
- mongo
...
project1 / docker / dev / nginx / Dockerfile(或项目2,它们相同)
FROM nginx:1.10
COPY nginx.conf /etc/nginx
COPY default.conf /etc/nginx/conf.d
最佳答案
当您启动docker-compose时,您需要使用标记--build
,该标记表示每次docker-compose构建容器,如果它们相似,则不要使用old
示例:以此docker-compose up --build
结尾的docker-compose down
关于docker - docker 如何缓存图像数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49190274/