网站首页 > java教程 正文
docker 日志清理
由于docker没有设置容器日志文件的大小,随着时间的累积,导致服务根目录的磁盘空间爆满,服务集体休克。真凶:日志文件。
默认的情况下docker的容器目录是
/var/lib/docker/containers
查看所有容器日志大小和清理所有容器日志命令:
ls -lh $(find /var/lib/docker/containers/ -name *-json.log)
truncate -s 0 /var/lib/docker/containers/*/*-json.log
docker日志文件大小设置
以上的方法随着时间的推移,容器日志会像杂草一样,卷土重来。要从根本上解决问题,需要限制容器服务的日志大小上限
docker-compose
配置容器docker-compose的max-size选项来实现
nginx:
image: nginx:1.12.1
restart: always
logging:
driver: “json-file”
options:
max-size: “2g”
重启nginx容器之后,其日志文件的大小就被限制在2GB.
全局设置
新建/etc/docker/daemon.json,若有就不用新建了。添加log-dirver和log-opts参数,样例如下:
# vim /etc/docker/daemon.json
{
"registry-mirrors": ["http://xxxx.io"],
"log-driver":"json-file",
"log-opts": {"max-size":"500m", "max-file":"3"}
}
max-size=500m,一个容器日志大小上限是500M。 max-file=3,意味着一个容器有三个日志,分别是id+.json、id+1.json、id+2.json。 log-driver = json-file 日志格式化为 JSON。这是 Docker 默认的日志驱动程序。
// 重启docker守护进程
# systemctl daemon-reload
# systemctl restart docker``
注意:设置的日志大小,只对新建的容器有效。
猜你喜欢
- 2024-11-27 大小仅1M的SHP文件读写APP Shapefile over Map
- 2024-11-27 Java内存区域
- 2024-11-27 「深入理解Java虚拟机」第二章 Java内存区域与内存溢出异常
- 2024-11-27 vue上传大文件的解决方案
- 2024-11-27 Springboot+VUE+MiniO来优雅实现文件存储
- 2024-11-27 Tomcat项目内存参数调优
- 2024-11-27 Java应届毕业生应该掌握哪些技能
- 2024-11-27 VUE-超大文件上传-如何上传文件-大文件上传
- 2024-11-27 一个文件占多少内存?看字节
- 2024-11-27 Springboot项目修改文件传输(minio)限制大小
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)