使用脚本定时自动清理openwrt的docker容器日志
最近在研究网易爆米花刮削小雅资源,由于网盘的风控策略,短时间内连续大量访问会联系报错。导致产生一堆小雅容器报错日志,想要查找有用的信息需要翻好多页,而且docker容器的日志自己并不会自动删除,就算是重启容器还会保留之前的日志一直累计,除非占用掉了全部存储空间。
网上也有很多清理docker日志的方法,比如限制日志文件大小,设置定时任务等等。
因为我的docker是跑在openwrt系统下面的,所以有些方法不太适用。最后在博客园找到一篇文章,里面的脚本基本上适用我目前的环境,只需要修改里面的docker安装路径即可。
¶创建脚本
首先需要确定你docker的安装路径记录下来,例如我这边docker安装在了-/mnt/mmc1-4/docker目录下。
1 | mkdir -p /opt/docker-sh |
注意脚本中两处路径需要替换成你实际docker的安装路径!
¶手动清理
进入到脚本所在文件夹
1 | cd opt/docker-sh |
查看日志大小
1 | ./docker_log_size.sh |
清理所有日志
1 | ./clean_docker_log.sh |
¶设置定时任务
编辑定时任务
1 | crontab -e |
键入 a 进入编辑模式,创建定时任务(每天晚上2点定期执行脚本清空容器日志)
1 | 0 2 * * * /opt/docker-sh/clean_docker_log.sh |
保存退出:wq 回车