前言

前几天我们发现某台服务器的硬盘报警了,马上就开始进行清理。使用df命令查看硬盘时,发现硬盘空间使用不足60%,硬盘的inode却使用的82%,是有大量的小文件占用了硬盘空间。

然后,发现是由于此服务器上运行了docker容器,产生了大量的缓存及其他的垃圾文件。查找了大量的文档,测试后,才完成了清理。下面是docker清理垃圾文件的总结。

(亲测可用。由于docker容器的服务正在使用,其他有风险的命令没有使用,以下几个命令相对安全可靠,足以清理空间)

一、硬盘占用查看
【1】硬盘空间查看
df -TH

【2】inode查看
df -i

【3】Docker占用的磁盘空间查看
docker system df

docker system是用于管理磁盘空间的命令,docker system df,类似于df命令,专门用来查看docker的磁盘使用情况。

二、docker清理
使用命令前要先确认是否可以删除

【1】删除所有已经停止的容器

注意:要先确认停止的容器中是否有不可以删除的,也可以删除后使用镜像再启一个容器。
docker rm $(docker ps -a|grep Exited |awk '{print $1}') docker rm $(docker ps -
qf status=exited)
【2】删除所有未打标签的镜像
docker rmi $(docker images -q -f dangling=true)
【3】删除所有无用的volume
docker volume rm $(docker volume ls -qf dangling=true)
【4】清理磁盘、删除关闭的容器、无用的数据卷和网络
参数: -a : 清除所有没有容器引用的镜像时,使用 docker system prune -a (慎用) -f or --force : 强制清除,
不会出现提示,使用docker system prune -f(慎用) --filter : 用来限制要保留的镜像的范围,例如:只清除超过创建时间超过24
小时的镜像(docker image prune-a --filter "until=24h") docker system prune

三、docker扩展
【1】停止所有运行中的容器
docker stop $(docker ps -q)
【2】停止所有容器
docker stop $(docker ps -a -q)
【3】删除所有容器

此命令可删除所有停止了的容器,无法删除运行中的容器
docker rm $(docker ps -aq)
【4】删除所有镜像
docker rmi $(docker images -q)

技术
©2019-2020 Toolsou All rights reserved,
汽车运动学模型【Vue简易入门】兄弟组件传值数据库设计NLP学习路径(一):NLP基础知识ControllerAdvice的常用场景Lambda表达式及函数式接口uni-app中使用 async + await 实现异步请求同步化汽车运动学模型的线性化推导过程ThinkPHP5通过composer安装Workerman安装失败问题(避坑指南)二进制模2除法(CRC循环冗余检验)