温馨提示×

Ubuntu怎样清理Docker镜像

小樊
59
2026-08-29 08:24:28
栏目: 智能运维

在 Ubuntu 上清理 Docker 镜像,常见且安全的做法如下,按“从温和到彻底”的顺序说明。


一、查看当前镜像(先确认)

docker images
# 或
docker image ls

二、删除不再使用的镜像(推荐)

1️⃣ 删除指定镜像

docker rmi 镜像ID或名称

例如:

docker rmi nginx:latest

如果镜像被容器占用,会报错,需要先删除容器。


2️⃣ 删除所有未被容器使用的镜像(最常用 ✅)

docker image prune

只删除 dangling images(无 tag 的镜像):

docker image prune

删除 所有未被使用的镜像(⚠️ 慎用):

docker image prune -a

三、清理容器后再清理镜像(更彻底)

1️⃣ 删除所有已停止的容器

docker container prune

2️⃣ 再清理镜像

docker image prune -a

四、一键清理所有 Docker 垃圾(⚠️ 最彻底)

会删除:

  • 已停止的容器
  • 未被使用的镜像
  • 未被使用的网络
  • 构建缓存
docker system prune

包括镜像:

docker system prune -a

连 volume 也一起删(极危险 ⚠️):

docker system prune -a --volumes

五、按体积定位“大镜像”(排查用)

docker system df

查看详细占用:

docker system df -v

六、手动删除某个镜像的所有版本

docker images | grep 镜像名
docker rmi 镜像ID1 镜像ID2

七、使用 Docker Compose 的情况

如果你用 docker-compose:

docker compose down --rmi all

✅ 常见推荐组合(安全)

docker container prune
docker image prune -a

⚠️ 注意事项

  • 删除镜像 不会影响正在运行的容器
  • 删除前确认没有重要数据在 volume 中
  • 生产环境不要随意 prune -a

如果你愿意,可以告诉我:

  • 是 服务器 / 本地 / CI 环境
  • 是否使用 Docker Compose / Swarm / Kubernetes

我可以给你一套更精确的清理方案 ✅

0 踩