Docker日志大小限制
全局限制Docker日志
sudo vi /etc/docker/daemon.json
{
"log-driver":"json-file",
"log-opts": {"max-size":"500m", "max-file":"3"}
}
sudo systemctl restart docker
全局限制系统日志
Ubuntu16.04以上系统日志采用systemd-journald.service服务管理日志,一些详细配置可参考:https://www.chenweiliang.com/cwl-1141.html
限制journald
日志大小只需要修改journald.conf内的参数,增加一下:
SystemMaxUse=200M
重启服务
sudo systemctl restart systemd-journald.service
日志清理
sudo journalctl --vacuum-size=500M
sudo journalctl --vacuum-time=2d
非全局限制(容器级)
在docker run时增加log-opt限制日志大小。
docker run \
--log-opt max-size=10m \
--log-opt max-file=3 \
--log-opt labels="production_status" \
--log-opt env="os, customer" \
-p 80:80 \
nginx:alpine
如果是docker-compose,只需要增加 logging
即可。
logging:
options:
max-size: ${LOGGING_OPTIONS_MAX_SIZE:-200k}