悬空镜像是无标签且未被引用的镜像,可用docker images -f "dangling=true"识别,用docker image prune安全删除;docker system prune可清理未使用的资源,但需谨慎使用-a和--volumes参数。
镜像是 docker 的只读模板,用来创建容器;容器是镜像的运行实例,有独立的文件系统、网络和进程空间。悬空镜像(dangling image)是指没有标签(
如何识别悬空镜像
运行以下命令查看所有悬空镜像:
docker images -f "dangling=true"
输出中 REPOSITORY 和 TAG 列都显示为
一键删除所有悬空镜像
执行该命令可安全清理所有悬空镜像(不会影响带标签的镜像或正在运行的容器):
docker image prune
如需跳过确认提示,加 -f 参数:
docker image prune -f
进阶:同时清理未使用的镜像、容器、网络和构建缓存
若想更彻底释放空间,可用系统级清理命令(注意:会删除所有已停止容器、未被引用的网络、悬空镜像及构建缓存):
-
docker system prune—— 基础清理,交互确认 -
docker system prune -a—— 清理所有未被任何容器引用的镜像(含带标签但未运行的),慎用 -
docker system prune -af --volumes—— 连卷一并清理(会丢失未挂载到容器的匿名卷数据)
日常建议:避免悬空镜像堆积
构建镜像时使用 --no-cache 或明确指定 --tag 可减少中间层残留;定期执行 docker image prune 能保持环境整洁。CI/CD 流水线中建议在构建后自动清理临时镜像。











