Docker容器日志清理方式
在容器运行的过程中,通常会产生大量的日志,尤其是应用程序本身记录了info级别的日志时候,程序的标准输出记录到容器的日志。这样会占用大量的磁盘空间,严重者导致IO异常,最终服务会宕机。
Docker容器日志默认存储在 /var/lib/docker/
,文件格式是json
格式,并通过容器ID进行区分。存储路径如下:/var/lib/docker/containers/ID/ID-json.log
清理
找到对应的日志文件:
docker inspect --format='{{.LogPath}}' CONTAINER_ID
进行清理:
cat /dev/null > xxx-json.log
自动保留配置
针对日志打印频繁的服务,可以直接在/etc/docker/daemon.json
配置日志记录选项,这样有助于Docker自己清理日志。
添加以下配置:
"log-driver":"json-file",
"log-opts": {"max-size":"200m", "max-file":"3"},
更多docker的疑难杂症可参考:https://www.escapelife.site/posts/43a2bb9b.html#toc-heading-1