溫馨提示×

centos中docker如何進行日志輪轉

小樊
54
2025-07-10 13:09:55
欄目: 智能運維

在CentOS系統中,Docker默認使用json-file日志驅動來記錄容器日志。為了實現日志輪轉,你可以使用logrotate工具。以下是配置Docker日志輪轉的步驟:

  1. 首先確保已經安裝了logrotate。如果沒有安裝,可以使用以下命令安裝:
sudo yum install logrotate
  1. 創建一個新的logrotate配置文件,例如/etc/logrotate.d/docker,并添加以下內容:
/var/lib/docker/containers/*/*.log {
    daily
    missingok
    rotate 7
    compress
    notifempty
    create 0640 root root
    sharedscripts
    postrotate
        if [ -f /var/run/docker.sock ]; then
            kill -USR1 $(cat /var/run/docker.pid 2>/dev/null) || true
        fi
    endscript
}

這個配置文件定義了以下日志輪轉策略:

  • 每天輪轉一次日志(daily
  • 如果日志文件丟失,不會報錯(missingok
  • 保留最近7天的日志文件(rotate 7
  • 使用gzip壓縮舊的日志文件(compress
  • 如果日志文件為空,則不進行輪轉(notifempty
  • 創建新的日志文件,權限為0640,屬主和屬組為root(create 0640 root root
  • 在輪轉完成后,發送USR1信號給Docker守護進程,通知它重新打開日志文件(postrotateendscript
  1. 保存并關閉配置文件。

  2. 測試logrotate配置是否正確:

sudo logrotate -f /etc/logrotate.d/docker

這個命令會強制執行一次日志輪轉。如果沒有錯誤,說明配置正確。

現在,Docker日志輪轉應該已經配置好了。你可以根據需要調整/etc/logrotate.d/docker文件中的配置。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女