Docker rmi 命令

 Docker 命令大全Docker 命令大全


docker rmi 命令用于删除一个或多个 Docker 镜像。

docker rmi 命令对于管理本地存储的镜像非常有用,帮助用户清理不再需要的镜像,释放存储空间。

语法

docker rmi [OPTIONS] IMAGE [IMAGE...]

参数说明:

  • IMAGE: 要删除的镜像的名称或 ID。可以是镜像名、镜像 ID 或镜像摘要。
  • OPTIONS: 可选参数,用来控制命令的行为。

常用选项:

  • -a, --all-tags: 指定仓库名称时,删除该仓库下的所有镜像。
  • -f, --force: 强制删除镜像,即使该镜像被容器使用。
  • --help: 打印帮助信息并退出。
  • --no-prune: 不删除悬空的父镜像。
  • -q, --quiet: 安静模式,不显示删除镜像的详细信息。

删除单个镜像

docker rmi ubuntu:latest

删除名为 ubuntu 的 latest 标签的镜像。

删除多个镜像

docker rmi ubuntu:latest nginx:latest

删除 ubuntu 和 nginx 的 latest 标签的镜像。

删除镜像的多个标签

docker rmi ubuntu:latest ubuntu:18.04

删除 ubuntu 镜像的 latest 和 18.04 标签。

删除所有标签的镜像

docker rmi -a ubuntu

删除 ubuntu 仓库下的所有镜像。

强制删除镜像

docker rmi -f ubuntu:latest

强制删除 ubuntu 的 latest 标签的镜像,即使它正在被使用。

删除悬空的镜像

docker rmi -d

删除所有没有标签的悬空镜像。

安静模式删除所有镜像

docker rmi -q $(docker images -q)

使用安静模式删除所有镜像,不显示删除的镜像信息。

删除指定仓库的所有镜像

docker rmi -a myrepo

删除 myrepo 仓库下的所有镜像。

删除镜像并保留其子镜像

docker rmi --no-prune ubuntu:latest

删除 ubuntu:latest 镜像,但保留其子镜像。

实例

查看现有镜像:

docker images

输出:

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
my_image            latest              d1e1b5a3a8a9        3 days ago          128MB
my_image1           latest              c3a4f5a3a8b8        4 days ago          256MB
my_image2           latest              a9e1d3a7c9b9        5 days ago          512MB

删除一个镜像:

docker rmi my_image

输出:

Untagged: my_image:latest
Deleted: sha256:d1e1b5a3a8a9...

删除多个镜像:

docker rmi my_image1 my_image2

输出:

Untagged: my_image1:latest
Deleted: sha256:c3a4f5a3a8b8...
Untagged: my_image2:latest
Deleted: sha256:a9e1d3a7c9b9...

常用场景

  • 清理无用镜像: 删除不再需要的镜像,以释放存储空间。
  • 镜像管理: 管理和维护本地镜像库,确保只保留需要的镜像。
  • 强制删除: 在镜像被容器使用时,强制删除它们(谨慎使用)。

注意事项

  • 强制删除镜像(使用 -f 选项)时,可能会导致依赖于该镜像的容器无法运行,因此应谨慎使用。
  • 默认情况下,docker rmi 会删除未使用的父镜像,如果不希望这样做,可以使用 --no-prune 选项。

docker rmi 命令是 Docker 镜像管理中非常重要的工具。通过该命令,用户可以删除不再需要的镜像,释放存储空间,并保持本地镜像库的整洁。使用适当的选项,可以灵活地管理镜像的删除过程。


 Docker 命令大全Docker 命令大全