【问题标题】:When do you need to use --no-cache with docker-compose build for django什么时候需要使用 --no-cache 和 docker-compose build for django
【发布时间】:2018-05-22 17:34:00
【问题描述】:
我正在使用 Docker 将 cookiecutter-django 应用程序部署到生产环境。我的问题是我什么时候需要使用--no-cache 和docker-compose -f production.yml build?
特别是,如果我对其中一个 settings.py 文件进行更改,是否会在不使用 --no-cache 的情况下获取该更改。那么对 requirements.txt 文件的更改呢?
【问题讨论】:
标签:
django
docker
docker-compose
cookiecutter-django
【解决方案1】:
Docker 将检测到您使用COPY 或ADD 复制到映像中的文件的更改,这将导致缓存从那时起被破坏。您可以通过历史记录中正在复制的文件的哈希值看到这一点。该哈希包括文件内容以及权限等文件元数据。
您需要使用 --no-cache 的时间涉及到 docker 看不到的外部依赖项,例如由包管理器 (apt/yum) 安装的包而不指定显式版本,或者从 URL 所在的 URL 下载工件一样,但内容会更新。