Docker的日志清理与全局配置
Docker中的容器运行中会不断消耗磁盘空间,最终磁盘耗尽导致故障。其中,Docker容器产生的日志是主因。
#查看日志大小及位置
[root@test docker]# du -h $(find /var/lib/docker/containers/ -name *-json.log) 164M /var/lib/docker/containers/aaa/aaa-json.log 60M /var/lib/docker/containers/bbb/bbb-json.log 100M /var/lib/docker/containers/ccc/ccc-json.log 12M /var/lib/docker/containers/ddd/ddd-json.log 52K /var/lib/docker/containers/eee/eee-json.log 4.0G /var/lib/docker/containers/fff/fff-json.log 8.0K /var/lib/docker/containers/ggg/ggg-json.log 28K /var/lib/docker/containers/hhh/hhh-json.log
手动清空指定日志文件。
[root@test docker]# cat /dev/null>/var/lib/docker/containers/xxx/xxx-json.log
手动清理日志文件只能是治标的方法,Docker支持全局日志的设置,但只对之后新建的容器生效。
[root@test docker]# vi /etc/docker/daemon.json
{ "log-driver":"json-file", #设置日志文件格式 "log-opts": {"max-size":"100m", "max-file":"10"} #设置单个文件最大100m,每个容器最多10个日志文件 }