page contents

docker清理占用的磁盘空间

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

attachments-2020-12-cYoMuIav5fcb3a5870fe9.png


前言

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

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

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


一、硬盘占用查看

【1】硬盘空间查看

df -TH

attachments-2020-12-tzws4Vbq5fcb3a76bcdb0.jpg

【2】inode查看

df -i

attachments-2020-12-XnzatvRy5fcb3a8129baa.jpg

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

docker system df

attachments-2020-12-oSYbgYB25fcb3a8ceaca1.jpg

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

attachments-2020-12-ClYWrXEI5fcb3a9a60035.jpg


三、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)



attachments-2020-12-7tnwkPjI5fcb3aabca52e.jpg来源:https://moxiao.blog.csdn.net/article/details/84404519

  • 发表于 2020-12-05 15:44
  • 阅读 ( 527 )
  • 分类:Docker

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
Pack
Pack

1135 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. 小柒 1478 文章
  3. Pack 1135 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章