Docker COPY在Jenkins上构建映像期间使缓存无效

时间:2020-04-03 08:10:07

标签: docker

我有Go项目。要缓存模块,我使用COPY go.mod go.sum ./。但是我的缓存仅在第一步之前就在Jenkins上失效-在COPY项目上:

Step 5/16 : WORKDIR /go/src/github.com/project
 ---> Using cache
 ---> 5d2fce4711c2
Step 6/16 : RUN apt-get update && apt-get -y install libavutil-dev
 ---> Using cache
 ---> ab9414893097
Step 7/16 : COPY . /go/src/github.com/project
 ---> c7dc5b6a3c88 #
Step 8/16 : COPY go.mod go.sum ./
 ---> fbd7f900ed7a

同时在本地它就像一种魅力。

1 个答案:

答案 0 :(得分:1)

您要复制到.的{​​{1}}的内容已更改,这就是缓存无效的原因。

/go/src/github.com/project是构建上下文-从中进行docker构建的目录。如果此文件夹中发生任何更改,它将使缓存无效。

如果您的源不变,并且您想保留缓存,则将此副本移到上一个副本之上。

相关问题