docker和k8s中实现批量删除不要的资源

 更新时间:2025年12月01日 16:56:41   作者:醉生梦死一笑惊魂  
文章介绍了在Docker和K8s中批量删除不是running状态的容器或pod的四种方法,包括根据容器状态删除Exited状态的容器、显示所有容器并过滤出Exited状态的容器、删除所有未运行的容器以及使用docker containers prune命令删除孤立的容器

经常玩Docker与K8s的朋友经常会遇到很多不是running的容器或者pod,其实这很浪费资源,下面主要介绍在Docker和K8s中批量删除不是running状态的容器或者pod。

清理exited进程

方法一

根据容器的状态,删除Exited状态的容器

docker rm $(docker ps -q -f status=exited)

方法二

显示所有的容器,过滤出Exited状态的容器,取出这些容器的ID

sudo docker ps -a|grep Exited|awk '{print $1}'

查询所有的容器,过滤出Exited状态的容器,列出容器ID,删除这些容器

sudo docker rm `docker ps -a|grep Exited|awk '{print $1}'`

或者

docker ps -a|grep Exited|awk '{print $1}'|xargs docker rm

方法三

删除所有未运行的容器(已经运行的删除不了,未运行的就一起被删除了)

sudo docker rm $(sudo docker ps -a -q)

方法四

Docker 1.13版本以后,可以使用 docker containers prune 命令,删除孤立的容器

sudo docker container prune​

清理dangling volumes

  • (可以参考清理exited进程的四种方法):
docker volume rm $(docker volume ls -qf dangling=true)

清理dangling image

  • (可以参考清理exited进程的四种方法):
docker rmi $(docker images --filter "dangling=true" -q --no-trunc)

清理MatchNodeSelector的pod

  • (可以参考清理exited进程的四种方法):
kubectl --all-namespaces  get po -o wdie | grep MatchNodeSelector |awk '{print$1}'|xargs kubectl -n kube-system delete pods

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Docker 教程之基本概念(镜像,容器,仓库)详解

    Docker 教程之基本概念(镜像,容器,仓库)详解

    这篇文章主要介绍了Docker 教程之基本概念(镜像,容器,仓库)详解的相关资料,这里对Docker 的基本知识做一个介绍,需要的朋友可以参考下
    2016-12-12
  • 远程docker服务器携带证书连接的实现方法

    远程docker服务器携带证书连接的实现方法

    本文主要介绍了远程docker服务器携带证书连接的实现方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • docker-compose中的环境变量问题

    docker-compose中的环境变量问题

    这篇文章主要介绍了docker-compose中的环境变量问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • docker搭建prometheus监控教程

    docker搭建prometheus监控教程

    这篇文章主要介绍了docker搭建prometheus监控教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-03-03
  • 解决docker搭建gitlab时容器不停重启的问题

    解决docker搭建gitlab时容器不停重启的问题

    这篇文章主要介绍了docker搭建gitlab时容器不停重启的问题,当用docker log 查看日志时,发现问题是在于配置文件没有权限创建的问题,本文给大家分享解决方案,感兴趣的朋友一起看看吧
    2022-05-05
  • Docker持久化搭建MinIO过程

    Docker持久化搭建MinIO过程

    这篇文章主要介绍了Docker持久化搭建MinIO过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-08-08
  • Docker部署Zookeeper官方镜像的保姆级教程

    Docker部署Zookeeper官方镜像的保姆级教程

    这篇文章介绍了如何使用Docker和Docker Compose部署Zookeeper官方镜像,包括安装Docker及可视化工具、创建挂载目录、运行Zookeeper容器、查看运行状态以及验证是否正常运行,需要的朋友可以参考下
    2025-02-02
  • docker安装OpenWebUI报错500的原因及解决方法

    docker安装OpenWebUI报错500的原因及解决方法

    Open WebUI是一个可扩展、功能丰富且用户友好的自托管WebUI,旨在完全离线操作,这篇文章主要介绍了docker安装OpenWebUI报错500的原因及解决方法,需要的朋友可以参考下
    2025-07-07
  • 详解在Docker容器中运行Spring Boot应用

    详解在Docker容器中运行Spring Boot应用

    本文将以一个最简单的Spring Boot开发的Web应用为例,讲解如何将其容器化运行。本文的重点是构建Docker镜像、运行Docker容器。
    2017-06-06
  • docker修改容器的端口、容器名、映射地址以及注意事项

    docker修改容器的端口、容器名、映射地址以及注意事项

    在日常的docker运维中,经常遇到修改容器的端口、容器名、映射地址等信息,这篇文章主要给大家介绍了关于docker修改容器的端口、容器名、映射地址以及注意事项的相关资料,需要的朋友可以参考下
    2022-08-08

最新评论