广告
返回顶部
首页 > 资讯 > 精选 >Docker如何删除及清理镜像
  • 348
分享到

Docker如何删除及清理镜像

2023-06-29 10:06:03 348人浏览 八月长安
摘要

这篇文章将为大家详细讲解有关Docker如何删除及清理镜像,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、通过标签删除镜像通过如下两个都可以删除镜像:docker rmi [imag

这篇文章将为大家详细讲解有关Docker如何删除及清理镜像,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

一、通过标签删除镜像

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

docker rmi [image]

或者:

docker image rm [image]

支持的子命令如下:

  • -f, -force: 强制删除镜像,即便有容器引用该镜像;

  • -no-prune: 不要删除未带标签的父镜像;

Docker如何删除及清理镜像

例如,我们想删除上章节创建的 allen_mysql:5.7 镜像,命令如下:

docker rmi allen_Mysql:5.7

Docker如何删除及清理镜像

从上面章节中,我们知道 allen_mysql:5.7 和 docker.io/mysql:5.7 实际上指向的是同一个镜像,那么,您可以能会有疑问,我删除了 allen_mysql:5.7, 会不会将 docker.io/mysql:5.7 镜像也给删除了?

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

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

Docker如何删除及清理镜像

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

那么,如果某个镜像不存在多个标签,当且仅当只有一个标签时,执行删除命令时,您就要小心了,这会彻底删除镜像。

例如,这个时候,我们再执行 docker rmi docker.io/mysql:5.7 命令:

Docker如何删除及清理镜像

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

二、通过 ID 删除镜像

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

docker rmi ee7cbd482336

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

三、删除镜像的限制

删除镜像很简单,但也不是我们何时何地都能删除的,它存在一些限制条件。

当通过该镜像创建的容器未被销毁时,镜像是无法被删除的。为了验证这一点,我们来做个试验。首先,我们通过 docker pull alpine 命令,拉取一个最新的 alpine 镜像, 然后启动镜像,让其输出 hello, docker!:

Docker如何删除及清理镜像

接下来,我们来删除这个镜像试试:

Docker如何删除及清理镜像

可以看到提示信息,无法删除该镜像,因为有容器正在引用他!同时,这段信息还告诉我们,除非通过添加 -f 子命令,也就是强制删除,才能移除掉该镜像!

docker rmi -f docker.io/alpine

但是,我们一般不推荐这样暴力的做法,正确的做法应该是:

  • 先删除引用这个镜像的容器;

  • 再删除这个镜像;

也就是,根据上图中提示的,引用该镜像的容器 ID (9d59e2278553), 执行删除命令:

docker rm 9d59e2278553

然后,再执行删除镜像的命令:

docker rmi 5cb3aa00f899

Docker如何删除及清理镜像

这个时候,就能正常删除了!

四、清理镜像

我们在使用 Docker 一段时间后,系统一般都会残存一些临时的、没有被使用的镜像文件,可以通过以下命令进行清理:

docker image prune

它支持的子命令有:

  • -a, --all: 删除所有没有用的镜像,而不仅仅是临时文件;

  • -f, --force:强制删除镜像文件,无需弹出提示确认;

另外,执行完 docker image prune 命令后,还是告诉我们释放了多少存储空间!

关于“Docker如何删除及清理镜像”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

--结束END--

本文标题: Docker如何删除及清理镜像

本文链接: https://www.lsjlt.com/news/324107.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Docker如何删除及清理镜像
    这篇文章将为大家详细讲解有关Docker如何删除及清理镜像,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、通过标签删除镜像通过如下两个都可以删除镜像:docker rmi [imag...
    99+
    2023-06-29
  • Docker删除及清理镜像的方法
    目录一、通过标签删除镜像二、通过 ID 删除镜像三、删除镜像的限制四、清理镜像一、通过标签删除镜像 通过如下两个都可以删除镜像: docker rmi [image] 或者: doc...
    99+
    2022-11-13
  • Docker如何删除镜像
    小编给大家分享一下Docker如何删除镜像,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!删除镜像docker rmi&...
    99+
    2022-10-19
  • 清理或删除docker无用镜像的操作方法
    目录清除docker无用镜像一、查看 docker 占用的资源二、只删除那些未被使用的资源1、通过标签删除镜像2、通过 ID 删除镜像3、删除镜像的限制4、清理镜像PS:docker...
    99+
    2023-01-06
    docker清理删除无用镜像 docker删除镜像 docker清理镜像 docker 批量删除
  • Docker如何删除没有标签的镜像
    这篇文章主要介绍Docker如何删除没有标签的镜像,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!删除没有标签的镜像docker rmi -f $(doc...
    99+
    2022-10-19
  • 如何删除docker images中为none的镜像
    这篇文章主要介绍了如何删除docker images中为none的镜像,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。由于平时一直使用docker build 命令才生成一个镜...
    99+
    2023-06-14
  • Docker如何批量删除容器或镜像
    今天小编给大家分享一下Docker如何批量删除容器或镜像的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。删除所有容器一、首先需...
    99+
    2023-07-05
  • Docker如何一次性删除所有的镜像
    这篇文章将为大家详细讲解有关Docker如何一次性删除所有的镜像,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一次性删除所有的镜像docker rmi ...
    99+
    2022-10-19
  • Linux中Docker镜像如何实现批量删除
    这篇文章主要介绍了Linux中Docker镜像如何实现批量删除,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。批量删除接下来,通过 xargs 批量删除镜像...
    99+
    2023-06-27
  • Docker如何管理和删除本地仓库中的镜像
    本篇内容介绍了“Docker如何管理和删除本地仓库中的镜像”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一...
    99+
    2022-10-19
  • 如何管理Docker镜像
    小编给大家分享一下如何管理Docker镜像,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、什么是Docker的镜像Docker 是一个开源的应用容器引擎,让开发...
    99+
    2023-06-04
  • 如何使用Nexus管理Docker镜像
    这篇文章将为大家详细讲解有关如何使用Nexus管理Docker镜像,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Nexus简介Nexus是一个多功能的仓库管理器,是企业常用的私有仓库服务器软...
    99+
    2023-06-19
  • win7如何清理图标缓存(重建、删除方法整理)
    不少正在用win7系统的用户也许会遇到一个桌面图标缓存问题,问题表现为“图标显示有问题”“桌面图标出现黑块”等,大体就是上述两个问题,下面整理与实践了几个方法供大家参考 [...
    99+
    2023-05-30
    win7 图标缓存 图标 整理 方法
  • 如何使用ODBC数据源管理器以及怎样添加或删除ODBC数据源
    如何使用ODBC数据源管理器以及怎样添加或删除ODBC数据源,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。  开放式数据库连接(ODBC)...
    99+
    2022-10-18
  • dos中如何用批处理删除N天前或指定日期时间内创建以及修改的文件
    这篇文章给大家介绍dos中如何用批处理删除N天前或指定日期时间内创建以及修改的文件,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。核心代码:@echo off:: by oicu#lsxk....
    99+
    2023-06-08
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作