linux自動清理Docker標準輸出日誌

湯青松發表於2021-11-12

一、 背景

使用docker logs 檢視容器日誌太多,非常不方便,每次手動清理很麻煩,寫了一個批量清理的shell指令碼

二、處理方法

docker容器的日誌都儲存在 /data/docker/lib/docker/containers/目錄,我們把對應的日誌刪除即可,這裡可以新建一個shell指令碼

vim cleanDockerLog.sh

把下面的內容放進去

#!/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 ========"

三、 執行清理

執行清理的命令如下所示

sh ./cleanDockerLog.sh

再次檢視 docker logs -f 容器ID,會發現日誌已經被情況完成


作者:湯青松

日期:2021年11月12日

微信:songboy8888

相關文章