Docker 构建缓存的物理法则

The physics of Docker build caching

Docker 构建缓存的物理法则

关于 Docker 构建缓存的建议常流于 folklore,但真相是它包含三个截然不同的缓存层,各自拥有不同的失效规则。本文通过 18 种场景的实测数据,揭示了层缓存、挂载缓存与镜像存储的运作机制。核心发现是:在 CI 环境中,依赖变更往往导致层缓存失效,此时挂载缓存(mount caches)的持久性才是性能关键。若仅依赖 GHA 等导出型缓存后端,在 Rust 等编译语言中,构建速度甚至可能比无缓存更慢。理解这些物理法则,才能避免在优化过程中南辕北辙。

一个在相同提交第二次构建时表现完美,却在单行代码修改时彻底失效的缓存配置,本质上是在优化你最少遇到的场景。

同日更多故事

2026-08-05