Docker 多阶段构建缓存

时间:2021-02-11 21:02:48

标签: docker docker-buildkit

IIUC,docker 本身不支持在存储库中缓存多阶段构建层。我曾期望缓存多阶段构建的结果,但事实并非如此?

以一个玩具构建文件为例:

FROM centos:7 as stage_0

RUN sleep 60
RUN echo "Hello world" > /root/x.txt

FROM centos:7 as output

COPY --from=stage_0 /root/x.txt /root/x.txt

好像在使用 --cache-from 时,stage_0 需要重新运行。有没有办法在图像存储库中缓存 stage_0 的结果,这样就不需要每次都构建它,假设输入不变?

我一直在使用多阶段构建来进行需要大量时间的操作——例如编译第三方工具 - 因此这些将是在构建之间缓存的最有用的项目。

0 个答案:

没有答案