Docker如何删除及清理镜像


这篇文章将为大家详细讲解有关Docker如何删除及清理镜像,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。通过如下两个都可以删除镜像:或者:支持的子命令如下:-f, -force: 强制删除镜像,即便有容器引用该镜像;-no-prune: 不要删除未带标签的父镜像;例如,我们想删除上章节创建的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.io/mysql:5.7镜像依然存在!那么,如果某个镜像不存在多个标签,当且仅当只有一个标签时,执行删除命令时,您就要小心了,这会彻底删除镜像。例如,这个时候,我们再执行docker rmi docker.io/mysql:5.7命令:从上图可以看到,我们已经删除了docker.io/mysql:5.7镜像的所有文件层。该镜像在本地已不复存在了!除了通过标签名称来删除镜像,我们还可以通过制定镜像 ID, 来删除镜像,如:一旦制定了通过 ID 来删除镜像,它会先尝试删除所有指向该镜像的标签,然后在删除镜像本身。删除镜像很简单,但也不是我们何时何地都能删除的,它存在一些限制条件。当通过该镜像创建的容器未被销毁时,镜像是无法被删除的。为了验证这一点,我们来做个试验。首先,我们通过docker pull alpine命令,拉取一个最新的alpine镜像, 然后启动镜像,让其输出hello, docker!:接下来,我们来删除这个镜像试试:可以看到提示信息,无法删除该镜像,因为有容器正在引用他!同时,这段信息还告诉我们,除非通过添加-f子命令,也就是强制删除,才能移除掉该镜像!但是,我们一般不推荐这样暴力的做法,免费云主机域名正确的做法应该是:先删除引用这个镜像的容器;再删除这个镜像;也就是,根据上图中提示的,引用该镜像的容器 ID (9d59e2278553), 执行删除命令:然后,再执行删除镜像的命令:这个时候,就能正常删除了!我们在使用 Docker 一段时间后,系统一般都会残存一些临时的、没有被使用的镜像文件,可以通过以下命令进行清理:它支持的子命令有:-a, --all: 删除所有没有用的镜像,而不仅仅是临时文件;-f, --force:强制删除镜像文件,无需弹出提示确认;另外,执行完docker image prune命令后,还是告诉我们释放了多少存储空间!关于“Docker如何删除及清理镜像”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

相关推荐: 婚礼小程序开发有哪些优势

这篇文章主要介绍了婚礼小程序开发有哪些优势的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇婚礼小程序开发有哪些优势文章都会有所收获,下面我们一起来看看吧。婚礼小程序开发有什么优势好处? 小程序是一款能够匹敌APP的软件工具,其界面设…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 10/10 13:01
下一篇 10/13 14:02

相关推荐