迫使码头工人建造以“重建”#39;一步到位

时间:2016-05-03 20:39:33

标签: docker

我知道docker有一个--no-cache=true选项来强制清理一个docker镜像。但对我而言,我真正想做的就是强制最后一步在我的dockerfile中运行,这是一个运行shell脚本的CMD命令。

无论出于何种原因,当我修改该脚本并保存它时,典型的docker构建将重用该步骤的缓存版本。有没有办法强迫码头不要这样做,只是在那一部分?

1 个答案:

答案 0 :(得分:4)

请注意,这会使该行之后所有 Dockerfile指令的缓存失效。这是Issue 1996中要求的(尚未实施)。

current workaround is

FROM foo
ARG CACHE_DATE=2016-01-01
<your command without cache>

docker build --build-arg CACHE_DATE=$(date) ....

这会在每次构建的ARG CACHE_DATE行之后使缓存失效。