#!/bin/sh
# 此脚本为日常清理docker日志
# docker 容器的路劲日志为 /var/lib/docker/containers/ 下-json.log
# 清理的方式有两种
# 1、直接RM -f /var/lib/docker/containers/ *-json.log
# 这种方式必须停止docker才能释放空间,否则日志文件一直处于写入(占用)状态,无法清理
# 2、使用cat /dev/null > $log 方式,这样可以直接替换日志文件里面的内容,将日志直接清空
# 本脚本使用的是第二种方法
# 开始清理日志提示
echo "====================$(date "+%Y-%m-%d %H:%M:%S") Start clean docker containers logs >= 1G =========================="
#定义日志路径
logs=$(find /var/lib/docker/containers/ -name *-json.log -type f)
for log in $logs
do
echo "clean logs : $log"
cat /dev/null > $log
done
# 清理完成
echo "==================== $(date "+%Y-%m-%d %H:%M:%S") end clean docker containers logs =========================="

host0108 发表于 2022-10-31 23:12
脱开裤子放屁,有更好的方式
Linux基本上都自带了一个组件logrotate,几行配置的事情

刹那 发表于 2022-10-31 23:23
我记得在daemon.json定义大小就可以了。
| 欢迎光临 全球主机交流论坛 (https://loc.qiche.eu.org/) | Powered by Discuz! X3.4 |