在日常使用 Docker 的过程中,未使用的镜像往往会不断累积,占用大量磁盘空间。学会高效地查找并删除不必要的镜像,不仅能回收存储容量,还能保持系统的整洁。

本文将演示如何从系统中删除 Docker 镜像,并介绍删除前需要注意的事项。开始之前,我们先了解一下 Docker 的基本概念:什么是 Docker、什么是 Docker 镜像,以及这些镜像存储在何处。

什么是 Docker?

自十多年前发布以来,Docker 一直以其高效可靠的应用构建与部署工具而闻名。它是一个开源平台,利用操作系统级虚拟化技术来构建、测试并无缝部署分布式应用。

什么是 Docker 镜像?

Docker 镜像是用于创建容器的只读模板。镜像中包含应用程序及其所需的依赖包、库、工具和配置文件。基于镜像运行的容器是一个轻量级、独立、隔离的运行单元,可以在不同的平台上保持一致的运行效果。

docker 删除镜像_如何清理Docker冗余镜像_删除Docker镜像教程

与传统虚拟机相比,容器具有更高的可移植性、更低的资源开销和更高的效率。但与此同时,镜像和容器也很容易在系统中堆积,造成磁盘空间不足。好在 Docker 提供了命令行工具,方便我们定期清理无用的镜像和容器。

Docker 镜像存储在哪里?

Docker 镜像通常存放在镜像注册中心。默认情况下,它们会存储在 Docker Hub 上,也可以托管在 GitLab、阿里云等第三方镜像库,或者保存在本地磁盘和私有仓库中。

删除镜像前的注意事项

在删除 Docker 镜像之前docker 删除镜像,需要特别小心。若操作不当,可能会导致容器崩溃或数据丢失。以下是几条常见的预防措施:

1. 检查容器依赖

确保没有正在运行或已停止的容器依赖于该镜像。虽然运行中的容器不直接依赖镜像,但一旦镜像被删除,将无法重新启动这些容器。

检查方法:

docker ps -a --filter ancestor=

如果输出中有容器linux 下载工具,请先停止并删除它们:

docker stop 
docker rm 

此外docker 删除镜像,还要确认该镜像不是其他镜像的基础层。可使用以下命令检查:

docker image inspect 

2. 备份数据

除非已在其他地方保存副本linux系统装win7,否则不要贸然删除镜像。提前做好备份,可以确保在新版本失败或需要回退时,能够恢复旧容器版本。

3. 确认用途

docker 删除镜像_如何清理Docker冗余镜像_删除Docker镜像教程

确认该镜像不再被 Docker Compose、Kubernetes 配置文件或 CI/CD 管道所使用。

4. 更新文档与脚本

若有文档或自动化脚本仍引用旧镜像,请及时更新,以免后续出现问题。

环境准备

本文示例基于 Ubuntu 24.04 环境,且系统中已安装并运行 Docker。如果你尚未安装,可参考如何在 Ubuntu 20.04 或 Ubuntu 24.04 上安装 Docker。

删除 Docker 镜像的几种方法

下面我们演示几种常见的删除方式,包括删除单个镜像、悬空镜像,以及批量删除所有镜像。

1. 删除一个或多个镜像

使用以下命令删除指定镜像:

docker rmi IMAGE_ID

先列出镜像:

docker images

删除Docker镜像教程_如何清理Docker冗余镜像_docker 删除镜像

如何清理Docker冗余镜像_docker 删除镜像_删除Docker镜像教程

若系统没有镜像,只会显示表头。

例如,我们从 Docker Hub 拉取 postgres 和 redis 镜像:

docker pull postgres
docker pull redis

docker 删除镜像_删除Docker镜像教程_如何清理Docker冗余镜像

删除Docker镜像教程_docker 删除镜像_如何清理Docker冗余镜像

Tagged:
Author

这篇优质的内容由TA贡献而来

刘遄

《Linux就该这么学》书籍作者,RHCA认证架构师,教育学(计算机专业硕士)。

发表回复