如何查找Docker中使用磁盘空间最多的容器?
admin
2023-02-28 16:42:08
0

如何查找Docker中使用磁盘空间最多的容器?

背景描述

测试环境某台Docker主机触发磁盘空间报警,经过排查与分析发现是某个docker容器内的应用日志过大导致的,下面是具体的排查步骤。

环境描述

日志文件: php容器 stderr日志
PHP容器: 使用 php:5.6-fpm 镜像
Docker主机: 
    系统: Ubuntu Server 16.04
    Storage Driver: overlay2
容器平台: Rancher 1.6

操作步骤

  1. 磁盘空间(文件系统)状态
df -Th /
Filesystem     Type  Size  Used Avail Use% Mounted on
/dev/vda1      ext4   99G   70G   25G  75% /
  1. 统计目录占用磁盘空间
du -h --max-depth=1 /

发现最大目录依次如下列表:

/var/
/var/lib/
/var/lib/docker/
/var/lib/docker/overlay2/

最终占用最大的目录是:
ef24649...省略...f7e6933/

这个目录是某个容器临时存储层目录,其生命周期取决于这个容器的生命周期,目录的名称也是临时存储层的ID,我们可以根据这个ID找到目标容器。

  1. 找到这个容器
for c in `docker ps -qa`; \
do \
  docker inspect $c \
  | grep -i 'ef24649...省略...f7e6933' && \
  echo $c; \
done

8b251ce7f7ae

这里使用Shell循环依次对比当前主机的容器是否包含这个临时存储层ID。

  1. 根据容器ID找到容器名字
docker inspect -f '{{ .Name }}'  8b251ce7f7ae

/r-css-css-server-1-d3579e44
  1. 释放磁盘空间
    最后我们要释放被占用的磁盘空间,可以根据找到容器ID/名称在rancher平台上升级这个应用(旧的容器将被删除替换)。

如何查找Docker中使用磁盘空间最多的容器?

  1. 验证磁盘空间
df -Th /
Filesystem     Type  Size  Used Avail Use% Mounted on
/dev/vda1      ext4   99G   17G   78G  18% /

小结

最后来总结下文章中的知识点

  • 容器存储层的生存周期和容器一样,容器消亡时容器存储层也随之消亡。
  • 任何保存于容器存储层的信息都会随容器删除而消失。
  • 容器数量较多时可以使用Shell循环,批量对比容器配置信息来找到目标容器。

参考文章

doker&k8s Qun [703906133]

相关内容

热门资讯

今日重大通报“中至江西麻将.真... 今日重大通报“中至江西麻将.真的有挂吗?”太坑了原来有挂您好,中至江西麻将这个游戏其实有挂的,确实是...
最新引进“决战卡五星.怎么装挂... 您好:决战卡五星这款游戏可以开挂,确实是有挂的,需要了解加客服微信【4282891】很多玩家在这款游...
玩家分享攻略“笑傲江湖.有没有... 有 亲,根据资深记者爆料笑傲江湖是可以开挂的,确实有挂(咨询软件无需打开...
玩家攻略科普“佛手在线.可以开... 家人们!今天小编来为大家解答佛手在线透视挂怎么安装这个问题咨询软件客服徽4282891的挂在哪里买很...
终于明白“暗宝.怎么开挂?”其... 终于明白“暗宝.怎么开挂?”其实是有挂您好,暗宝这个游戏其实有挂的,确实是有挂的,需要了解加客服微信...
今日重大通报“闽乐茶楼.有没有... 网上科普关于“闽乐茶楼有没有挂”话题很是火热,小编也是针对闽乐茶楼作*弊开挂的方法以及开挂对应的知识...
勇救3名落水儿童的栾留伟牺牲后... 极目新闻记者 姚赟 曹雪娇2024年8月10日,年仅41岁的栾留伟为救三名落水儿童牺牲。得知这一消息...
【第一财经】“海贝大厅炸金花.... 【第一财经】“海贝大厅炸金花.究竟有挂吗?”详细开挂教程您好,海贝大厅炸金花这个游戏其实有挂的,确实...
最新引进“经典联盟牛牛.究竟有... 最新引进“经典联盟牛牛.究竟有挂吗?”透视曝光猫腻您好,经典联盟牛牛这个游戏其实有挂的,确实是有挂的...
今日重大通报“葫芦三娃.真的有... 有 亲,根据资深记者爆料葫芦三娃是可以开挂的,确实有挂(咨询软件无需打开...