Docker:清理Docker占用的磁盘空间
容器清理
- docker container prune : 仅删除停止运行的容器。
- docker rm -f $(docker ps -aq) : 删除所有容器(包括停止的、正在运行的)。
- docker container rm -f $(docker container ls -aq) : 同上。
镜像清理
docker rmi <image id> :通过镜像的id来删除指定镜像。
有一些镜像是隐形的:
- 子镜像,就是被其他镜像引用的中间镜像,不能被删除。
- 悬挂状态的镜像,就是不会再被使用的镜像,可以被删除。
其他命令:
- docker image ls -f dangling=true : 可以列出所有悬挂状态的镜像
并使用命令 docker image rm $(docker image ls -f dangling=true -q) 或 docker image prune进行删除。 - docker image rm $(docker image ls -q) :删除所有镜像。但正在被容器使用的镜像无法删除。
数据卷清理
- docker volume rm $(docker volume ls -q) :删除不再使用的数据卷。
- docker volume prune :同上。
缓存清理
Docker 18.09 引入了 BuildKit ,提升了构建过程的性能、安全、存储管理等能力。
docker builder prune :删除 build cache。
一键清理
docker system df 命令,类似于 Linux上的 df 命令,用于查看 Docker 的磁盘使用情况:

TYPE列出了 Docker 使用磁盘的 4 种类型:
- Images :所有镜像占用的空间,包括拉取下来的镜像,和本地构建的。
- Containers :运行的容器占用的空间,表示每个容器的读写层的空间。
- Local Volumes :容器挂载本地数据卷的空间。
- Build Cache :镜像构建过程中产生的缓存空间(只有在使用 BuildKit 时才有,Docker 18.09 以后可用)。
最后的 RECLAIMABLE 是可回收大小。
- docker system prune : 可以用于清理磁盘,删除关闭的容器、无用的数据卷和网络,以及 dangling 镜像(即无 tag 的镜像)。
-
docker system prune -a : 清理得更加彻底,可以将没有容器使用 Docker镜像都删掉。
注意,这两个命令会把你暂时关闭的容器,以及暂时没有用到的 Docker 镜像都删掉了。
转载链接:https://www.jianshu.com/p/ffc697692dd7
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?