docker常用命令

1. 首先,查看所有本地镜像:

docker images

这会列出你本地所有的镜像,包括它们的 REPOSITORY(仓库名)TAG(标签)IMAGE ID(镜像ID)

REPOSITORY    TAG       IMAGE ID       CREATED         SIZE
ubuntu        20.04     a2e18977a1ca   2 weeks ago     72.8MB
nginx         latest    605c77e624dd   3 months ago    141MB
hello-world   latest    feb5d9fea6a5   12 months ago   13.3kB

2. 根据名称和标签删除:

这是最推荐的方式,因为它精确无误。

# 格式: docker rmi [REPOSITORY]:[TAG]
docker rmi hello-world:latest

3. 根据镜像ID删除:

你也可以使用镜像ID的前几位或完整ID来删除。使用ID的好处是,即使同一个镜像有多个标签,也可以一次性删除。

# 格式: docker rmi [IMAGE_ID]
docker rmi feb5d9fea6a5

注意: 如果该镜像正在被一个或多个容器(即使是停止的容器)使用,你将无法直接删除它,并会收到类似 "image is being used by container..." 的错误。你需要先删除相关的容器(使用 docker rm [CONTAINER_ID])。


方法二:删除所有未被使用的镜像(推荐)

这是一个非常实用的命令,可以安全地删除所有没有被任何容器引用的镜像。这通常能释放大量空间。

docker image prune

执行后,Docker 会列出所有将要被删除的悬空镜像(dangling images,即没有标签的镜像),并询问你是否确认删除。输入 y 并回车即可。

更激进的清理:删除所有未被容器使用的镜像

如果你想删除所有当前没有被任何正在运行或已停止的容器使用的镜像(不仅仅是悬空镜像),可以添加 -a--all 参数。

docker image prune -a

警告: 这个命令会删除很多镜像,请在确认不再需要这些镜像时使用。它会询问你是否继续,输入 y 确认。


方法三:一键清理所有无用资源(终极方案)

如果你想一次性清理所有未被使用的 Docker 资源,包括:

  • 停止的容器 (Stopped containers)
  • 未被使用的网络 (Unused networks)
  • 悬空的镜像 (Dangling images)
  • 未被容器使用的构建缓存 (Build cache)

可以使用下面这个“核弹级”命令:

docker system prune

更激进的系统清理:

image prune 类似,你可以添加 -a 参数来删除所有未被使用的镜像,而不仅仅是悬空镜像。

docker system prune -a

强烈警告: 这是一个非常强大的清理命令,会删除大量数据。请务必在确认这些资源都不再需要时才执行。它同样会在执行前要求你确认。


总结与建议

命令 作用 安全性 推荐场景
docker rmi [镜像名/ID] 删除指定的一个或多个镜像 高(精确控制) 只删除一两个确定不用的镜像。
docker image prune 删除所有悬空镜像(无标签) 高(通常是构建过程中产生的垃圾) 日常维护,定期清理构建残留。
docker image prune -a 删除所有未被容器使用的镜像 中(可能误删未来有用的镜像) 磁盘空间紧张,且确认可以重新拉取镜像。
docker system prune 删除所有未被使用的容器、网络、悬空镜像和构建缓存 中(会删除停止的容器) 彻底清理环境,释放大量空间。
docker system prune -a 删除所有未被使用的容器、网络、所有未被使用的镜像和构建缓存 低(最激进的清理) 准备放弃当前项目环境,或在测试环境中使用。

给初学者的建议:

  • 日常清理:从 docker image prune 开始,这是最安全有效的日常维护命令。
  • 空间严重不足:如果 docker image prune 释放的空间不够,可以尝试 docker system prune
  • 删除特定镜像:如果你知道某个镜像肯定没用了,直接用 docker rmi 删除它。
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 除了基本的docker pull、docker image、docker ps,还有一些命令及参数也很重要,在此记...
    微笑_a8a0阅读 1,558评论 0 0
  • 一、镜像 1.1 获取镜像 docker pull user/repo:tag 1.2 查看镜像信息 查看所有镜像...
    wanghuohuo0716阅读 2,817评论 0 0
  • 基础入门 运行我们第一个容器sudo docker run -i -t ubuntu /bin/bash-i 标志...
    wayyyy阅读 4,619评论 0 0
  • Docker-使用Docker 从``Docker Hub`镜像来源下载镜像 https://hub.docker...
    TheAPICaller阅读 2,563评论 0 0
  • 1. 查看运行容器 2. 查看所有容器 3. 进入容器 其中字符串为容器ID: 4.停用全部运行中的容器: 5.删...
    SevenLonely阅读 2,701评论 0 0

友情链接更多精彩内容