You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行Docker清理命令后仍使用缓存,如何彻底清除缓存?

彻底清除Docker构建缓存的方法

1. 单次构建直接跳过缓存

直接给docker build加--no-cache参数,不管现有缓存状态,所有构建步骤都会重新执行,这是最快的临时解决办法:

docker build --no-cache # 加上你的其他构建参数

2. 清理Buildx构建器缓存

如果使用了Buildx(当前Docker默认可能开启该功能),普通的docker builder prune可能无法覆盖对应缓存。先查看系统中的构建器列表:

docker buildx ls

再针对性清理指定构建器的缓存:

docker buildx prune --all --force --builder <构建器名称>

嫌麻烦的话可以直接清理所有Buildx缓存:

docker buildx prune --all --force

3. 手动删除缓存目录(Linux/macOS)

Docker的构建缓存存放在固定目录,先停止Docker服务再直接删除即可:

  • Linux:/var/lib/docker/buildkit(Buildx缓存)或/var/lib/docker/overlay2(传统构建缓存)
  • macOS(Docker Desktop):~/Library/Containers/com.docker.docker/Data/vms/0/data/docker/buildkit

操作命令参考:

# Linux
sudo systemctl stop docker
sudo rm -rf /var/lib/docker/buildkit
sudo systemctl start docker

# macOS
killall Docker
rm -rf ~/Library/Containers/com.docker.docker/Data/vms/0/data/docker/buildkit
open /Applications/Docker.app

4. Docker Desktop重置(Windows/macOS)

使用Docker Desktop的话,直接通过UI重置更省心:

  • 打开Docker Desktop设置
  • 进入Troubleshoot页面
  • 点击Reset to factory defaults,该操作会清除所有镜像、容器、缓存及配置

你之前执行的docker system prune --all --volumes主要清理闲置的镜像、容器、卷等资源,docker builder prune默认仅清理当前构建器的缓存,但如果使用了多构建器实例或Buildx,就可能无法覆盖到目标缓存。单次构建用--no-cache最便捷,要彻底清除所有缓存可选择后面几种方法。

内容的提问来源于stack exchange,提问作者John Graham

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 17:21:10