线上使用了Docker部署Tomcat项目,今天查看磁盘发现5天100G没有了,经过与同事商量后发现,是Docker记录的日志。
1、排查Docker容器日志输出情况 docker inspect --format {{.LogPath}} 容器名/容器ID ,这下面是docker的日志输出路径。
2、调整日志保留策略
1)全局设置(必须重启docker守护进程)
# vim /etc/docker/daemon.json
{
"registry-mirrors": ["http://f613ce8f.m.daocloud.io"],
"log-driver":"json-file",
"log-opts": {"max-size":"500m", "max-file":"3"}
}
systemctl daemon-reload
systemctl restart docker
max-size=500m,意味着一个容器日志大小上限是500M,
max-file=3,意味着一个容器有三个日志,分别是id+.json、id+1.json、id+2.json
https://docs.docker.com/config/containers/logging/configure/
2)对容器调整(docker-compose)
version: "3.9"
services:
some-service:
image: some-service
logging:
driver: "json-file"
options:
max-size: "200k"
max-file: "10"
3、查看配置是否生效
docker inspect -f '{{.HostConfig.LogConfig}}' 容器名xxx