作者:Mr---Nic | 来源:互联网 | 2022-12-03 09:59
我最近切换到多阶段docker构建,并且看起来在中间构建上没有任何缓存.我不确定这是否是一个限制器限制,某些东西是不可用的,或者我是否做错了什么.
我在新版本开始时从最终版本中拉出 - 并执行--cache-,但它始终运行完整版本.
1> Matthew Gosl..:
这似乎是docker本身的限制,并在此问题中进行了描述 - https://github.com/moby/moby/issues/34715
解决方法是:
使用--target构建中间阶段
将中间图像推送到注册表
使用--target构建最终图像并使用多个--cache-from路径,列出所有中间图像和最终图像
将最终图像推送到注册表
对于后续构建,首先从注册表中拉出中间+最终图像