
一句话承诺:用对比表+流程图+一键脚本,快速释放磁盘,同时避免误删生产镜像。
指标 | 命令 | 说明 |
|---|---|---|
镜像占用 | docker images | 关注 SIZE 与虚悬dangling |
容器占用 | docker ps -a | 停止但未删除的容器 |
卷占用 | docker volume ls | 长期积累最容易被忽视 |
构建缓存 | docker builder prune | 旧层缓存可能很大 |

#!/usr/bin/env bash
set -euo pipefail
# 1) 显示当前占用
echo "== Docker System DF =="
docker system df || true
# 2) 清理虚悬镜像 (dangling)
echo "== Prune dangling images =="
docker image prune -f || true
# 3) 清理停止的容器
echo "== Remove stopped containers =="
docker rm $(docker ps -aq -f status=exited) 2>/dev/null || true
# 4) 清理无用卷(谨慎)
echo "== Prune unused volumes =="
docker volume prune -f || true
# 5) 清理构建缓存
echo "== Builder prune =="
docker builder prune -f || true
# 6) 再次显示占用
echo "== Docker System DF After =="
docker system df || true# 显示占用
docker system df
# 清理虚悬镜像
docker image prune -f
# 清理停止容器
$stopped = docker ps -aq -f status=exited
if ($stopped) { docker rm $stopped }
# 清理无用卷(谨慎)
docker volume prune -f
# 清理构建缓存
docker builder prune -f
docker system dfdocker system prune -a 可能删除重要镜像层。替代:分项清理并人工确认。docker rm $(docker ps -aq) 误删运行中容器。替代:仅删除 status=exited。docker volume ls 与 docker volume inspect。Nginx 反向代理只返回 404?最小可用配置与定位流程(时序+排错清单)。