設定、清理docker容器日志
1、清理docker容器日志
a. 通過df -h查詢存儲使用率
b. 通過du -sh /var/lib/docker/* | sort -nr查詢檔案大小
c. 可使用腳本來批量清理容器日志,代碼如下:
#!/bin/sh
echo “======== start clean docker containers logs "
logs=$(find /var/lib/docker/containers/ -name *-json.log)
for log in $logs
do
echo “clean logs : $log”
cat /dev/null > $log
done
echo " end clean docker containers logs ========”
來自 https://www.cnblogs.com/kaishirenshi/p/10670107.html
2. 限制docker容器日志
上面清理日志的方法隻是治标,遲早日志檔案又會變得很大,需要限定容器日志大小來
治本。
建立/etc/docker/daemon.json,若有就不用建立了。添加log-dirver和log-opts參
數,樣例如下:
vim /etc/docker/daemon.json
{
“log-driver”:“json-file”,
“log-opts”: {“max-size”:“500m”, “max-file”:“3”}
}
max-size=500m,意味着一個容器日志大小上限是500M,max-file=3,意味着一個
容器有三個日志,分别是id+.json、id+1.json、id+2.json。
重新開機docker守護程序 # systemctl daemon-reload 、# systemctl restart docker
注意:設定的日志大小,隻對建立的容器有效。
$ docker run -d --log-opt max-size=1g nginx
參考
【docker】docker限制日志檔案大小的方法+檢視日志檔案的方法
限制容器大小