2

不知道天气这是 Docker / Shell / BigSur 更新的问题,但是一个正常的 Docker 构建命令,如:

docker build -f Dockerfile -t MYIMAGE .

最近开始更改默认输出,现在缺少中间层:

在此处输入图像描述

VS。包含中间层 ID 的旧输出: 在此处输入图像描述

我们如何触发此信息的输出,因为官方文档对此没有任何说明。

Docker version 20.10.2

谢谢和最好的问候

4

1 回答 1

4

BuildKit 是 Docker 的新构建后端,具有许多新的有用功能和更快的构建速度(请参阅https://pythonspeed.com/articles/docker-buildkit/了解它有用的原因)。

但是,它加快速度的方法之一是不存储中间层。

从 2020 年秋季发布的 Docker Desktop 开始,默认启用 BuildKit。但是,您可以在“设置”中禁用它并获得旧行为。但是,这将失去 BuildKit 的加速和功能,因此更好的方法可能是弄清楚如何在没有它的情况下实现您想要的。

例如,如果这是“我如何调试失败的构建”,您可以只注释掉 Dockerfile 中以失败行开头的所有行,然后重新构建;由于缓存,它会很快,然后你就有了用于调试的中间图像。

于 2021-03-02T14:04:26.610 回答