清理 Docker 日志
2022年12月3日
没有评论
一、概述
Docker 在不重建容器的情况下,日志文件默认会一直追加,时间一长会逐渐占满服务器的硬盘的空间,内存消耗也会一直增加。
Docker 的日志文件存在 /var/lib/docker/containers 目录中
二、处理方案
2.1 使用脚本清理日志(治标)
clean_docker_logs.sh
1 2 3 4 5 6 7 8 9 10 11 12 | #!/bin/bash echo "==================== start clean docker containers logs ==========================" logs=$(find /var/lib/docker/containers/ -name *-json.log) for log in $logs do echo "clean logs : $log" cat /dev/null > $log done echo "==================== end clean docker containers logs ==========================" |
2.2 设置Docker容器日志大小(治本)
修改docker-compose.yml
示例:
1 2 3 4 5 6 7 8 | gateway-services: container_name: gateway-services image: adoptopenjdk/openjdk8 restart: always logging: driver: "json-file" options: max-size: "50m" |
max-size=50m,意味着一个容器日志大小上限是50M
重启docker
docker-compose –compatibility up -d