我有两个项目。对于所有这些我已经为DEV环境创建了docker-compose.yml。
起初我和项目1合作过,一切都很好。但后来我为项目2构建了图像,并且docker以某种方式将nginx图像从项目1缓存到了项目。
所以,我在目录/etc/nginx/conf.d /./中找到项目1的项目2文件的内部容器。
项目1和项目2具有类似的docker-compose.yml和用于nginx的Dockerfile。
如何防止这种行为? 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
答案 0 :(得分:2)
当你启动docker-compose时,你需要使用标志--build
这个标志每次都说docker-compose构建容器,如果它们相似则不要使用旧的
示例:当您使用此docker-compose up --build
docker-compose down