0. 概述

查看日志应该大家都很清楚可以用 docker log 了,但是,这些日志被放在哪里?Docker 又是如何处理这些日志的不知道你是否清楚?本文将介绍一下 Docker 关于日志的一些内容。

1. 日志存放在哪

2. 日志如何管理

Docker 的日志提供的是驱动式的管理,支持多种不同的日志管理模型,默认的是 json 文件的模式,可以这么看:

  1. [[email protected].io]# docker info | grep Log
  2. Logging Driver: json-file
图 1:所有支持的 Logger 驱动

3. 日志怎么清除

如果使用的是 json 日志格式的话,Docker 支持很多选项:

图 2:json-log 支持的选项

可以通过设置这些选项来达到控制日志清除的效果。

4. 配置日志

在目录 /etc/docker 下创建 daemon.json(默认情况下是没有的),然后写入配置即可:

  1. [[email protected].io]# cat > /etc/docker/daemon.json <<EOF
  2. {
  3. "log-driver": "json-file",
  4. "log-opts": {
  5. "max-size": "10m",
  6. "max-file": "3",
  7. "labels": "production_status",
  8. "env": "os,customer"
  9. }
  10. }
  11. EOF

5. Ref