Docker 删除镜像

2019-11-18  本文已影响0人  happyJared

通过标签删除镜像

通过如下两个都可以删除镜像:

docker rmi [image]

或者:

docker image rm [image]

支持的子命令如下:

docker images

例如,删除 allen_mysql:5.7 镜像,命令如下:

docker rmi allen_mysql:5.7
docker rmi allen_mysql:5.7

其中 allen_mysql:5.7docker.io/mysql:5.7 实际上指向的是同一个镜像,那么,删除了 allen_mysql:5.7 之后, 会不会将 docker.io/mysql:5.7 镜像也给删除了?

实际上,当同一个镜像拥有多个标签时,执行 docker rmi 命令,只是会删除了该镜像众多标签中指定的标签而已,并不会影响原始的那个镜像文件。

不信的话,继续执行 docker images 命令,来看下 docker.io/mysql:5.7 镜像还在不在:

docker images

可以看到, docker.io/mysql:5.7 镜像依然存在 。

注意,如果某个镜像不存在多个标签,且仅当只有一个标签时,如果再执行删除命令时,就会彻底删除镜像。

例如此时,再执行 docker rmi docker.io/mysql:5.7 命令:

docker rmi docker.io/mysql:5.7

从上图可以看到,这里已经删除了 docker.io/mysql:5.7 镜像的所有文件层,该镜像在本地就已经不存在了!

通过 ID 删除镜像

除了通过标签名称来删除镜像,还可以通过镜像 ID 来删除,如:

docker rmi ee7cb

通过 ID 来删除镜像,会先尝试删除所有指向该镜像的标签,然后在删除镜像本身。

上一篇 下一篇

猜你喜欢

热点阅读