Docker 构建缓存会自动清除吗?

ale*_*ine 5 docker

我无法确定 Docker 的本地构建缓存是否被自动清除。

如果清除的话,多久清除一次?这是我们可以配置的吗?是否有年龄限制或总缓存大小限制?

请注意,这个问题不是关于如何在构建镜像时绕过缓存,也不是如何手动清除缓存,也不是如何利用缓存机制来加速 Docker 构建。这些问题已经被广泛记录。这个问题的目的是了解 Docker 内部如何管理其构建缓存。如果不手动清除它会永远存在吗?它会自行过期吗?如何?

Ant*_*ile 0

docker 的构建缓存基于image您本地的 s。图像永远不会自动删除,因此本质上构建缓存永远不会被删除

docker决定是否使用缓存的方式涉及检查上一层和正在运行的命令是否相同

如果您删除了用于满足缓存的图像,您可以考虑“清除缓存”(另外docker system prune -f将删除也可能是缓存组件的任何匿名图像)