首页 > 编程知识 正文

docker删除本地镜像,docker 有趣镜像

时间:2023-05-05 19:24:38 阅读:159484 作者:2044

一、使用标签删除镜像可以通过以下两种方式删除镜像:

文档RMI [ image ]或:

文档图像RM [图像]支持的子命令包括:

-f,-force:强制删除镜像。 即使容器引用镜像; -no-prune:请勿删除没有标签的父镜像;

例如,假设您要删除在上一章中创建的allen_mysql:5.7镜像。 命令如下所示。

docker rmi allen_mysql:5.7

在上面的章节中,我们知道allen_mysql:5.7和Docker.io/mysql:5.7实际上指向同一个镜像,但是即使删除了Allen_MySQL33605.7,docker.io

事实上,如果同一镜像具有多个标签,则docker rmi命令只会删除该镜像的许多标签中的指定标签,而不会影响原始镜像文件。

如果不相信,请运行docker images命令验证docker.io/mysql:5.7镜像是否尚不存在。

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

如果镜像中不存在多个标签,并且只有一个标签,则在执行删除命令时,请注意要永久删除镜像。

例如,在这种情况下,请运行dockerrmidocker.io/MySQL :5.7命令。

如上图所示,docker.io/mysql:5.7中镜像的所有文件层次结构都已删除。 本地不再存在此镜像!

二、要按ID删除镜像,不仅可以按标签名称删除镜像,还可以通过创建镜像ID删除镜像。 例如:

当docker rmi ee7cbd482336建立按ID删除镜像时,它会首先尝试删除指向镜像的所有标签,然后删除镜像本身。

三.删除镜像限制删除镜像很容易,但并不是随时随地都可以删除,存在一些限制条件。

如果镜像创建的容器未销毁,则无法删除镜像。 为了验证这个,让我们做个实验吧。 首先,用docker pull alpine命令拉出最新的alpine镜像,启动镜像,输出hello、docker!

然后,尝试删除此镜像:

可以看到提示信息,不能删除此镜像。 因为集装箱在引用他! 此外,此消息还表明,只有通过添加-f子命令(强制删除)才能删除镜像

虽然是docker rmi -f docker.io/alpine,但一般不推荐使用这种暴力方法。 正确的做法如下。

首先,删除引用此镜像的容器; 删除此镜像; 也就是说,如上图所示,引用此镜像的容器id(9d59e2278553 )来运行删除命令。

docker rm 9d59e2278553然后运行删除镜像的命令。

docker rmi 5cb3aa00f899

此时,可以正常删除!

四.清理镜像我们使用了Docker一段时间后,系统中通常会保留一些临时的、未使用的镜像文件。 可以通过以下命令进行清理:

docker image prune支持的子命令如下:

-a,--all:不仅删除临时文件,还删除所有未使用的镜像; -f,--force :强制删除镜像文件,无需弹出确认; 另外,请告诉我运行docker image prune命令后释放了多少存储空间。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。