首页 > 其他分享 >在Docker中,如何批量清理临时镜像文件?

在Docker中,如何批量清理临时镜像文件?

时间:2024-03-08 17:33:44浏览次数:24  
标签:虚悬 删除 批量 镜像文件 命令 images 镜像 Docker docker

在Docker中,所谓的“临时镜像”或“虚悬镜像”(dangling images)是指那些没有被任何容器引用的层,通常是在构建新镜像时遗留下来的中间层。要批量清理这类镜像,你可以使用 docker images 命令结合一些过滤条件来找到它们,然后用 docker rmi 命令删除。

以下是批量清理临时镜像文件的步骤:

  1. 列出所有虚悬镜像:

    docker images --filter "dangling=true"
    
  2. 如果你想直接删除所有虚悬镜像,可以执行以下命令:

    docker rmi $(docker images -f "dangling=true" -q)
    

    上述命令的工作原理是:

    • docker images -f "dangling=true" -q:这将只列出(并返回其ID)那些没有被任何容器引用的镜像(虚悬镜像)的ID列表。
    • $(...):这部分会执行内部命令并将输出作为参数传递给外部命令。
    • docker rmi:这个命令用于删除指定的镜像,这里的参数是从上面的子命令得到的所有虚悬镜像ID。

请确保在运行此命令之前确认你确实希望删除这些镜像,因为一旦删除就无法恢复。在某些系统上,你可能需要加上 sudo 来获得足够的权限执行删除操作。

另外,如果你想要一步到位清理所有未使用的资源,包括未被引用的镜像、停止的容器、网络和挂载点,可以使用一个更强大的命令:

docker system prune

综上所述,这个命令会询问你是否确认进行清理操作,它比单独删除虚悬镜像更加彻底,但同样要注意其后果。

标签:虚悬,删除,批量,镜像文件,命令,images,镜像,Docker,docker
From: https://www.cnblogs.com/huangjiabobk/p/18061494

相关文章

  • 在Docker中,容器退出后,通过docker ps命令查看不到,数据会丢失么?
    在Docker中,当一个容器退出(stoppedorexited)后,它将不再处于运行状态,因此,通过dockerps命令默认情况下将无法看到已退出的容器。然而,这并不意味着容器内的数据会丢失。容器退出时,其存储层中的数据通常是保留的,除非你明确地删除了容器。这意味着即便容器停止运行,只要你没有使用d......
  • Window10使用Docker-Desktop自带k8s和dashboard配置本地k8s开发环境
    安装Docker-DesktopInstallDockerDesktoponWindows下载地址:https://docs.docker.com/desktop/install/windows-install/打开Docker-Desktop,启用Kubernetes打开Docker-Desktop,启用Kubernetes点击左上角:设置,选择Kubernetes选项卡,启用Kubernetes,点击Apply&restart注意:最......
  • Docker Compose一键搭建安全测试靶场
    1.Docker快速安装1.1.ubuntu系统步骤一:安装必要的一些系统工具sudoapt-getupdatesudoapt-get-yinstallapt-transport-httpsca-certificatescurlsoftware-properties-common步骤二:安装GPG证书curl-fsSLhttps://mirrors.aliyun.com/docker-ce/linux/ubuntu/gp......
  • docker 常用命令
    docker常用命令1.dockersearch[OPTIONS]NAME#搜索DockerHub上的镜像。-q:只显示仓库名。--filter:设置过滤条件,比如搜索官方镜像可以使用--filter="is-official=true"。limit:设置搜索结果的最大条数。--no-trunc:显示完整的镜像描述,而不是截断的描述。例子......
  • docker 部署 django + mysql + vue 项目
    ​项目目录结构,在Vue和Django项目根目录下创建Dockerfile文件,在父级目录下创建docker-compose.yml文件Project#父级目录├─client#vue3项目目录│├─public│└─src│├─*files│├─*files│├─Dockerfile└─server#Django项......
  • 如何通过docker容器查看run命令
    1.当你需要迁移docker的时候,忘记的run的命令可以使用一下方法blossom-backend是你的容器名字或者容器IDdockerinspect--format'dockerrun\--name{{printf"%q".Name}}\{{-with.HostConfig}}{{-if.Privileged}}--privileged\{{-en......
  • 基于docker的emqx,数据持久化,防止重启配置丢失
    docker中运行的emqx,采用在內置账号、密码进行身份认证的情况下,如果容器重启,那么上述配置将丢失。一下操作基于emqx4.4.191、先运行emqxdocker容器dockerrun-d--nameemqxemqx/emqx:4.4.192、将容器中的emqx的配置copy到本地:dockercpemqx:/opt/emqx/etc/...本地目......
  • Linux环境下Docker部署.Net8应用
    ......
  • docker安装zipkin
    命令如下,调整后执行即可:dockerrun--namezipkin\-p9411:9411\--restart=always\-eSTORAGE_TYPE=mysql\-eMYSQL_HOST=ip地址\-eMYSQL_TCP_PORT=3306\-eMYSQL_DB=连接数据库名称\-eMYSQL_USER=root\-eMYSQL_PASS=数据库密码\-dopenzipkin/zipkin:2.24......
  • docker安装MongoDB
    需注意,docker版本不能太低,否则执行会报:missingsignaturekey(缺少签名密钥):需要重新安装docker,所以docker最开始最好安装新版本:yuminstalldocker-ce-y参考的链接:https://www.4vsy.com/article/231.html,https://blog.csdn.net/qq_25430563/article/details/127977667doc......