查找占用空间的容器日志文件并清理

在日志管理不善的容器中,日志文件会无限扩张导致磁盘不足。查询占用空间大的命令:

# 显示符合条件的文件的总大小
find /var/lib/docker/containers/ -name "*-json.log" -exec du -ch {} + | grep total$

# 查询大于一定尺寸的文件
find /var/lib/docker/containers/ -name "*-json.log" -size +100M

# 查询大于一定尺寸的文件,并返回ls格式的结果,-lh中的h是human-readable的意思,人类更易读
find /var/lib/docker/containers/ -name "*-json.log" -size +100M -exec ls -lh {} \;

#清空文件内容但是保留文件的方法
truncate -s 0 /path/to/file.ext

# 也可以自动把查出来的文件内容情况,强烈不建议,应该先判断一下输出结果再决定怎么做
find /var/lib/docker/containers/ -name "*-json.log" -size +100M -exec truncate -s 0 {} \;