问题:
root@anxxxx-prod1:~# df -h
Filesystem Size Used Avail Use% Mounted on
udev 3.9G 0 3.9G 0% /dev
tmpfs 799M 3.4M 795M 1% /run
/dev/vda1 99G 96G 0 100% /
tmpfs 3.9G 548K 3.9G 1% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
3f5be49b80-fuf99.cn-shanghai.nas.aliyuncs.com:/ 10P 18G 10P 1% /mnt
none 99G 96G 0 100% /var/lib/docker/aufs/mnt/da4441ba96f3a657e90e289da6f59090bb41baba95355b1b62e239e0000a17af
none 99G 96G 0 100% /var/lib/docker/aufs/mnt/aaf7527a3a42fc6d3695dc95d6ddb6bc6473337bf14d5fa3debf4ba70c5be70e
shm 64M 0 64M 0% /var/lib/docker/containers/019052bc4d2c1c0367abdca83222ca2dc4a9bc88a264aa5d8e1f4575f4f59d45/shm
shm 64M 0 64M 0% /var/lib/docker/containers/f0fbd839ff52f77a9f1d4a13772194553c2a3d52f8cd76547da696c6e683973a/shm
tmpfs 799M 0 799M 0% /run/user/0
none 99G 96G 0 100% /var/lib/docker/aufs/mnt/3ca913d1e6aad8c7908c949b4f2472fde89d1c6f10d2fb29779287fa4c9c3efb
shm 64M 0 64M 0% /var/lib/docker/containers/bc9fe7700f8c8f5d249ff2e710515218969b0f09bd39d82d90e6622f71f8152d/shm
删除了镜像之后,只是减少了轻微的used使用率(减少了3G空间)
紧接着清理虚悬镜像
docker system prune -a
查找系统中的大文件
find / -type f -size +100M -print0 | xargs -0 du -h | sort -nr # 查找"/"目录下所有大于100M的所有文件
...
...
175M /root/log/monolith/monolith.2019-11-23.09.log
175M /root/log/monolith/monolith.2019-11-23.07.log
175M /mnt/backup/mysql/backup/2019-08-01-22:28:56/prod-mysql.mysql.rds.aliyuncs.com/data/db_ankobot.sql.gz
125M /root/log/monolith/monolith.2019-12-10.11.log
123M /mnt/test.ankobot.com/uploads/facesets/facesets.zip
121M /root/log/monolith/monolith.2019-11-23.05.log
69G /var/lib/docker/containers/bc9fe7700f8c8f5d249ff2e710515218969b0f09bd39d82d90e6622f71f8152d/bc9fe7700f8c8f5d249ff2e710515218969b0f09bd39d82d90e6622f71f8152d-json.log
1.7G /var/lib/docker/containers/019052bc4d2c1c0367abdca83222ca2dc4a9bc88a264aa5d8e1f4575f4f59d45/019052bc4d2c1c0367abdca83222ca2dc4a9bc88a264aa5d8e1f4575f4f59d45-json.log
0 /proc/kcore
发现/var/lib/docker/containers/{container_id}/下存在数据较大的*-json.log日志文件,百度发现这是docker容器运行的标准输入日志,遂删除之。项目中已使用-v的方式挂载项目输出日志文件,因此对容器运行日志没有了需求,研究后发现在构建参数的时候可以对标准输入日志大小与数量进行限制,以减少日志文件对存储空间的占用,以下配置分别为日志文件最大容量、最大日志文件数
清空了日志文件
root@anxxxx-prod1:~# echo '' > /var/lib/docker/containers/bc9fe7700f8c8f5d249ff2e710515218969b0f09bd39d82d90e6622f71f8152d/bc9fe7700f8c8f5d249ff2e710515218969b0f09bd39d82d90e6622f71f8152d-json.log
docker run ...... --log-opt max-size=10m --log-opt max-file=1
也可以在docker的配置文件中进行全局修改:新建或修改/etc/docker/daemon.json,添加log-dirver和log-opts参数(daemon.json参数说明:
{
"log-driver":"json-file",
"log-opts": {"max-size":"10m", "max-file":"1"}
}
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。