docker清理未使用的镜像的命令详解及注意事项

 更新时间:2025年06月09日 09:23:45   作者:ALex_zry  
Docker命令是使用Docker的基础,这篇文章主要介绍了docker清理未使用的镜像的命令详解及注意事项的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
docker images prune

在 Docker 中清理未使用的镜像(包括悬空镜像和完全未被引用的镜像),可以使用以下命令:

1. ​删除所有悬空镜像​(推荐常用)

docker image prune
  • 悬空镜像 (dangling images)​​ 是指没有标签且未被任何容器引用的镜像(通常是构建过程中的临时层)。

  • 添加 -f 强制删除(无需确认):

    docker image prune -f
    

2. ​删除所有未被使用的镜像​(谨慎!)

docker image prune -a
  • ​**-a 会删除所有未被容器或标签引用的镜像**​(包括有名字但未被使用的镜像)。
  • 添加 -f 强制删除:
    docker image prune -a -f
    

3. ​清理整个 Docker 系统​(停止的容器 + 悬空镜像 + 网络 + 构建缓存等)

docker system prune
  • 添加 -a 会额外删除未被使用的镜像​(不仅仅是悬空镜像):

    docker system prune -a
    
  • 强制清理(跳过确认提示):

    docker system prune -a -f
    

注意事项:

  • 悬空镜像 vs 未使用镜像​:

    • docker image prune → 只删除悬空镜像​(无名镜像)。
    • docker image prune -a → 删除所有未被引用的镜像​(包括有名字但未被容器使用的镜像)。
  • 数据无价!​

    • 执行 prune -a 前确保镜像真的不需要(例如,未来启动容器可能会用到的镜像也会被删除)。

    • 建议先手动检查:

      # 列出悬空镜像
      docker images -f dangling=true
      
      # 列出所有镜像(按占用空间排序)
      docker images --format "{{.ID}}\t{{.Repository}}\t{{.Size}}" | sort -k 3 -h
      
  • 自动清理​:
    可通过配置 Docker Daemon 的 docker-compose.yml 或修改 /etc/docker/daemon.json 实现定时清理,例如:

    {
      "features": {
        "buildkit": true
      },
      "builder": {
        "gc": {
          "enabled": true,
          "defaultKeepStorage": "10GB"
        }
      }
    }
    

总结常用命令:

场景命令
安全清理悬空镜像docker image prune -f
彻底清理未使用的镜像docker image prune -a -f(谨慎!)
全面清理 Docker 系统垃圾docker system prune -f(不包含未使用镜像)

到此这篇关于docker清理未使用的镜像的命令详解及注意事项的文章就介绍到这了,更多相关docker清理未使用镜像命令内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Docker 隔离与限制原理介绍

    Docker 隔离与限制原理介绍

    这篇文章主要介绍了Docker 隔离与限制原理,对于 Docker 等大多数 Linux 容器来说,Cgroups 技术是用来制造约束的主要手段,而 Namespace 技术则是用来修改进程视图的主要方法,下文相关介绍,需要的朋友可以参考一下
    2022-04-04
  • 详解使用 Docker 构建 LNMP 环境

    详解使用 Docker 构建 LNMP 环境

    本篇文章主要介绍了使用 Docker 构建 LNMP 环境,详细的介绍了配置LNMP 环境的步骤。具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-03-03
  • 解决Jenkins集成docker插件问题的一些方法

    解决Jenkins集成docker插件问题的一些方法

    本文主要介绍了Jenkins集成docker插件问题的一些方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • 使用Docker registry镜像创建私有仓库的方法

    使用Docker registry镜像创建私有仓库的方法

    本篇文章主要介绍了使用Docker registry镜像创建私有仓库的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-04-04
  • docker单节点服务编排部署过程(docker-compose)

    docker单节点服务编排部署过程(docker-compose)

    这篇文章主要介绍了docker单节点服务编排部署过程(docker-compose),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-06-06
  • 基于Docker+Selenium Grid的测试技术应用示例代码

    基于Docker+Selenium Grid的测试技术应用示例代码

    Selenium Grid允许我们在多台计算机上并行运行测试,并集中管理不同的浏览器版本和浏览器配置。这篇文章给大家介绍基于Docker+Selenium Grid的测试技术应用示例代码,需要的朋友参考下吧
    2021-08-08
  • Docker查询挂载的目录的几种实用方法

    Docker查询挂载的目录的几种实用方法

    要查询 Docker 容器的挂载目录,最核心、最准确的方法是使用 docker inspect 命令,下面为你介绍几种从简到繁的实用方法,需要的朋友可以参考下
    2026-05-05
  • Docker 技巧之删除Docker容器和镜像

    Docker 技巧之删除Docker容器和镜像

    本篇文章主要介绍了Docker 技巧之删除Docker容器和镜像,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • Docker容器访问宿主机网络的方法

    Docker容器访问宿主机网络的方法

    这篇文章主要介绍了Docker容器访问宿主机网络的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-10-10
  • docker+jenkins+gitee配置持续集成部署方式

    docker+jenkins+gitee配置持续集成部署方式

    这篇文章主要介绍了docker+jenkins+gitee配置持续集成部署方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09

最新评论