docker日志设置定期清理 - Go语言中文社区

docker日志设置定期清理


docker日志设置定期清理

1. 日志的查看

docker logs
具体的参数,请查看help命令。
docker logs --help

2. 清除日志文件

docker日志的存储位置:/var/lib/docker/containers/<容器ID>/*.log。 

通过ll可以查出来一堆容器名字出来,但是如何知道这么长的日志目录属于那些容器所有呢?


可以通过docker ps -a 查询
我们会发现查询的[容器ID] 和 [日志文件的目录] 是相同的

a) 查看所有容器日志文件大小:
ls -lh $(find /var/lib/docker/containers/ -name *-json.log)

b) 临时清理日志文件:
truncate -s 0 /var/lib/docker/containers/<容器ID>/*-json.log

当然也可以这样:
cat /dev/null > *-json.log
注意:rm -rf *-json.log 删除后需要重启容器。如果容器运行的情况下,linux进程会引用着, 不会释放磁盘空间的。

3. 日志设置

a) 在dokcer的配置文件中增加日志参数
添加log-dirver和log-opts参数;
$ vi /etc/docker/daemon.json
"log-driver":"json-file",
"log-opts":{ "max-size" :"50m","max-file":"3"}
max-file=3,意味着一个容器有三个日志,分别是id+.json、id+1.json、id+2.json
b) 重启生效
sudo systemctl daemon-reload
sudo systemctl restart docker
只针对于新创建的docker有效

4. 日志收集

可以使用fluentd收集。

具体请参照:https://www.cnblogs.com/YatHo/p/7866029.html



版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/shgh_2004/article/details/80776811
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-03-01 20:50:05
  • 阅读 ( 1125 )
  • 分类:docker

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢