我有一个用于docker compose的yml文件来创建两个容器并连接它们。 我今天对代码做了一些更改(替换了一个文件夹,添加到其中一个docker文件中)。这是yml文件:
version: '3'
services:
web:
build: ./web
ports:
- "8000:8000"
restart: always
volumes:
- web:/www
nginx:
build: ./nginx
ports:
- "80:80"
restart: always
links:
- web
volumes:
- web:/www
volumes:
web:
我所做的更改是./web中的dockerfile:
FROM python:3.6.4
RUN mkdir /www
WORKDIR /www
ADD . /www/
RUN pip install -r requirements.txt
EXPOSE 8000
CMD python /www/davidbien/manage.py migrate
CMD cd dockertest && gunicorn dockertest.wsgi:application -w 2 -b :8000
我所做的更改是从dockertest文件夹更改/ davidbien /文件夹名称。
我尝试通过运行来重建图像:
docker-compose build --no-cache
但这没有用。 我也尝试了没有--no-cache的相同命令。 我也尝试过:
docker-compose up --force-recreate
重建后,但是当我运行脚本时,我不知道为什么旧文件夹仍然出现(即使它已被删除)。 我还能做些什么来清除docker-compose中的缓存?我用谷歌搜索,但只得到了上述两个命令。 感谢
答案 0 :(得分:0)
我遇到了同样的问题,设法解决此问题并更新容器的最快方法就是更改其名称。
因此,我有一个名为app
的容器,它是app.docker
中的设置。我分别将其重命名为php
和php.docker
。运行docker-composer up -d
创建了更新的容器。