docker 日志清理


首先確認 docker 使用的存儲引擎

docker info

如果使用 Logging Driver: json-file, 那么日志默認在 /var/lib/docker/contains/xxxxx/xxxxx-json.log

#!/bin/sh 

logs=`find /var/lib/docker/containers/ -name *-json.log`  

for logfile in $logs  
do  
echo " "  > $logfile 
done  

然后放到crontable中。 修改 日志引擎位置
cat /etc/docker/daemon.json

{
  "log-driver": "json-file",
  "log-opts": {"max-size": "10m", "max-file": "3"}
}

 

 

 

 

如果使用  Logging Driver:  journald 日志清理

查看  journal 占用空間

journalctl --disk-usage

 

設定系統journal最大16M

 
         

  只保留近一周的日志

  journalctl --vacuum-time=1d

只保留500MB的日志
journalctl --vacuum-size=500M 手動清空

vim /etc/systemd/journald.conf
SystemMaxUse=16M
ForwardToSyslog=no

systemctl  restart systemd-journald.service

#查看使用大小
journalctl --disk-usage

 

將systemd的日志寫入磁盤:

1.在/var/log/目錄下創建日志存放目錄,並加入systemd-journal的權限:

mkdir /var/log/journal
chown root:systemd-journal /var/log/journal
chmod 755 /var/log/journal

 

systemctl  restart systemd-journald.service


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM