# /etc/docker/daemon.json
{
  "log-driver": "json-file",
  "log-opts": {"max-size": "100m", "max-file": "3"}
}

服务跑一周后宿主机磁盘告警,排查发现是容器日志目录持续增长。先别急着动参数,把报错原文和时间点记下来,顺序反了容易白折腾。

原因不复杂,默认日志驱动不限制单文件大小与数量,输出越多占用越大。

「Docker 日志占满磁盘」确认了原因之后,改动尽量只碰那一处,顺手改的东西后面最容易出问题。改完隔一天再看一次,当场正常不代表能稳住。

测试环境和线上的差别,往往就在版本号和那几行被忽略的配置上。线上出问题先对时间点,跟发布、备份、任务执行的时刻排一排,能省掉一半功夫。

日志级别临时调高可以,记得改回去,长期开着既占磁盘又掩盖真问题。权限不要一口气开到最大,先加到够用再往上试,范围小才好收。

处理上按这个顺序:配置全局日志轮转;重启容器使配置生效;对已有大日志做清理。

改完只确认一件事:日志文件稳定在限制大小内,磁盘占用不再持续增长。

作者 9823189