一、概述
Docker 在不重建容器的情况下,日志文件默认会一直追加,时间一长会逐渐占满服务器的硬盘的空间,内存消耗也会一直增加。
Docker 的日志文件存在 /var/lib/docker/containers 目录中
二、处理方案
2.1 使用脚本清理日志(治标)
clean_docker_logs.sh
#!/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
示例:
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
本文参考链接:
docker目录 /var/lib/docker/containers 日志清理_shykevin的博客-CSDN博客
网友评论