自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

徹底解決 Docker 日志膨脹

云計(jì)算 云原生
我發(fā)現(xiàn)一臺(tái)服務(wù)器的磁盤空間即將耗盡。經(jīng)過排查,發(fā)現(xiàn)某個(gè) Docker 容器在一年內(nèi)生成了14 GB 的日志文件。為避免類似問題,本文將指導(dǎo)你如何快速檢查、清理 Docker 日志,并設(shè)置日志大小限制以防止未來(lái)日志失控。

最近,我發(fā)現(xiàn)一臺(tái)服務(wù)器的磁盤空間即將耗盡。經(jīng)過排查,發(fā)現(xiàn)某個(gè) Docker 容器在一年內(nèi)生成了14 GB 的日志文件。為避免類似問題,本文將指導(dǎo)你如何快速檢查、清理 Docker 日志,并設(shè)置日志大小限制以防止未來(lái)日志失控。

  • 重啟容器(如服務(wù)器重啟或手動(dòng)執(zhí)行 systemctl restart docker)不會(huì)清除日志,日志文件會(huì)持續(xù)累積。
  • 重建容器(刪除并重新創(chuàng)建容器)才會(huì)重置日志。

檢查 Docker 日志大小

默認(rèn)日志路徑:

/var/lib/docker/containers/<容器ID>/<容器ID>-json.log

使用以下命令按大小排序查看所有日志文件:

find /var/lib/docker/containers/ -name "*-json.log" | xargs du -h | sort -hr

示例輸出:

5.9G /var/lib/docker/containers/d2e92.../d2e92...-json.log
4.9G /var/lib/docker/containers/ec7a4.../ec7a4...-json.log

根據(jù)容器 ID 查找容器名稱

使用docker inspect命令:

docker inspect --format='{{.Name}}' <容器ID>

示例輸出:

/php-fpm-valente

(注意:輸出結(jié)果會(huì)以斜杠開頭,實(shí)際容器名為php-fpm-valente)

清理 Docker 日志

  • 清理單個(gè)日志文件:
truncate -s 0 /var/lib/docker/containers/<容器ID>/<容器ID>-json.log
  • 清理所有日志文件(謹(jǐn)慎使用):
truncate -s 0 /var/lib/docker/containers/*/*-json.log

設(shè)置日志大小限制

  • 編輯 Docker 守護(hù)進(jìn)程配置文件/etc/docker/daemon.json(若不存在則新建):
sudo nano /etc/docker/daemon.json
  • 添加以下內(nèi)容(限制單個(gè)日志文件為 10MB,保留最多 3 個(gè)歸檔文件):
{
    "log-driver": "json-file",
    "log-opts": {
        "max-size": "10m",
        "max-file": "3"
    }
}
  • 重啟 Docker 服務(wù)以生效:
sudo systemctl restart docker
  • 注意:此配置僅對(duì)新創(chuàng)建的容器生效。若需應(yīng)用到現(xiàn)有容器,需刪除并重建它們。

驗(yàn)證配置

使用以下命令檢查容器的日志配置:

docker inspect <容器名稱> | grep -A 4 LogConfig

示例輸出:

"LogConfig": {
    "Type": "json-file",
    "Config": {
        "max-file": "3",
        "max-size": "10m"
    }
}

總結(jié)

  • 定期檢查日志大小,避免磁盤空間耗盡。
  • 通過daemon.json配置日志輪轉(zhuǎn),限制日志文件大小。
  • 清理日志時(shí)優(yōu)先使用truncate,避免直接刪除文件導(dǎo)致容器異常。

遵循以上實(shí)踐,可有效管理 Docker 日志,提升服務(wù)器資源利用率和穩(wěn)定性。更多配置細(xì)節(jié)請(qǐng)參考Docker 官方文檔[1]。

參考資料

[1]Docker 官方文檔:https://docs.docker.com/config/containers/logging/configure/

責(zé)任編輯:武曉燕 來(lái)源: 程序猿技術(shù)充電站
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)