docker - 仅在使用缓存的某个步骤之前重新运行 Docker?

标签 docker

是否有任何选项可以强制 Docker 在不使用该步骤的缓存的情况下运行构建?

一个特定的用例是这样的:

...
ADD some.cfg some.cfg
RUN do something with some.cfg

在处理 Dockerfile 时,通常需要调整配置并测试它们。 从 Docker 的角度来看,这些步骤保持不变,但是从我作为 Dockerfile 的角度来看 写我希望 Docker 使用缓存运行构建,直到 ADD 操作以及从那时起 没有缓存。这可能吗?

最佳答案

正如 Mykola 所建议的,Docker 将对文件进行校验和,如果内容发生变化,则应使缓存失效。但是,您始终可以通过在该点设置或更改环境变量来在 Dockerfile 中的给定行强制缓存失效,例如:

...
ENV updated-adds-on 14-DEC-14
ADD...

关于docker - 仅在使用缓存的某个步骤之前重新运行 Docker?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27467698/

相关文章:

docker - 通过主动-备用部署将karaf从传统部署迁移到云

docker - 是否可以像Windows 7一样在窗口服务器中运行docker客户端?

angularjs - 无法让 AngularJS 站点在 Docker 容器中运行

docker - 路由器将 ip 分配给 docker 容器

docker - 如何将 dotnet 核心应用程序的退出代码从 docker 容器中传递出去

mongodb - Docker:用于ElasticSearch和Mongodb的容器外部的持久数据

docker - 找不到所需的文件

docker - Docker是否支持每X秒重启一次容器

docker - 错误 : Version in "./docker-compose.yml" is unsupported. 您可能会看到此错误,因为您使用了错误的 Compose 文件版本

docker - 使用 AWS CodeBuild 构建 Windows 容器