docker 設定日誌檔案大小及個數

2021-09-23 06:19:23 字數 1217 閱讀 3194

docker容器在執行一定時間後會產生大量的日誌,導致磁碟空間問題出現。

現在有2個方案可以限制docker容器日誌檔案大小及個數

docker run或dokcer create時新增引數

如建立並執行

docker run --log-opt max-size=10m --log-opt max-file=3
修改docker daemon.json檔案,配置日誌檔案引數

預設 /etc/docker/daemon.json

}

systemctl daemon-reload

systemctl restart docker

注意:新建立的容器會生效,原有容器不生效。

引數

說明log-opts max-size

容器日誌檔案上限大小

log-opts max-file

視窗日誌檔案上限個數

預設查詢目錄/var/lib/docker/containers/

#!/bin/sh

echo

"*****=== start clean docker containers logs *****==="

logs=

$(find /var/lib/docker/containers/ -name *-json.log)

for log in

$logs

doecho

"clean logs : $log"

cat /dev/null >

$log

done

echo

"*****=== end clean docker containers logs *****==="

docker容器正在執行的話,使用rm -rf方式刪除日誌後,通過df -h會發現磁碟空間並沒有釋放。

原因是通過rm -rf刪除,將會從檔案系統的目錄結構上解除鏈結(unlink)。

如果檔案是被開啟的(有乙個程序正在使用),那麼程序將仍然可以讀取該檔案,磁碟空間也是一直被占用。

正確操作覆蓋操作 *cat /dev/null > -json.log

。或者可以通過rm -rf刪除後重啟docker容器。

壓縮日誌及檔案大小

壓縮日誌及資料庫 檔案大小 特別注意 請按步驟進行,未進行前面的步驟,請不要做後面的步驟 否則可能損壞你的資料庫.1.清空日誌 dump transaction 庫名 with no log 2.截斷事務日誌 backuplog資料庫名withno log 3.收縮資料庫檔案 如果不壓縮,資料庫的檔...

日誌檔案大小限定

include include include include getpid include time.h include stdarg.h include syslog.h define log file name len 64 define log max size 128 define log...

Spring Boot檔案大小設定

springboot上傳檔案大小的配置我這裡記錄兩種,一種是設定在配置檔案裡只有兩行 一種是加個bean 首先第一種 maxfilesize 是單個檔案大小 maxrequestsize是設定總上傳的資料大小 這就可以了。根據自己需求定義吧,mb和kb都可以,大小寫也都隨意,long位元組應該可以的...