docker对容器日志大小限制
OCI的目标是提供一个开放、标准化的容器技术基础,以促进容器技术的创新和应用,遵循这些规范,容器技术可以更好地支持跨平台和跨环境的部署,同时保持高效和安全.
1.clean containers logs
[root@k8s-master ~]# docker info |grep Root //docker rootdir
Docker Root Dir: /var/lib/docker
container logs:
/var/lib/docker/containers/container_id/xxxx.json.log
#list logs size
find /var/lib/docker/containers/ -name *-json.log |xargs du -sh
#reset log
cat /dev/null >/var/lib/docker/containers/xxxx/xxxx.log-json.log
2.docker-log-driver
#docker logs-driver type
--log-driver=json-file //default /var/lib/docker/containers/xxxx/xxx.log
json-file
syslog
journald
gelf
fluentd
none //关闭日志记录
#daemon.json
/etc/docker/daemon.json
{
"registry-mirrors": [
"http://f613ce8f.m.daocloud.io"
],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m",
"max-file": "3"
}
}
systemctl daemon-reload && systemctl restart docker
注意这个修改只对新容器生效,老容器不生效
3.rancher-set loglevel
docker exec -ti <container_id> loglevel --set trace/debug/info/error
4.logrotate
/etc/logrotate.d/docker
/var/lib/docker/containers/*/*.log {
daily
rotate 3
compress
delaycompress
missingok
copytruncate
}