非常教程

Docker 17参考手册

引擎: 管理员指南 | Engine: Admin Guide

JSON文件日志记录驱动程序(引擎) | JSON File logging driver (Engine)

默认情况下,Docker 捕获所有容器的标准输出(和标准错误),并使用 JSON 格式将它们写入文件。JSON 格式用每个行的原点(stdoutstderr)及其时间戳注释。每个日志文件都包含只有一个容器的信息。

使用

使用json-file驱动程序作为默认日志记录驱动程序,设置log-driverlog-opt控件中的适当值的键。daemon.json文件,该文件位于/etc/docker/在linux主机上或C:\ProgramData\docker\config\daemon.json在WindowsServer上。有关+配置Docker的更多信息,请使用daemon.json,见+daemon.json...

下面的示例将日志驱动程序设置为json-file并设置max-size选择。

{
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "10m"
  }
}

重新启动Docker以使更改生效。

属性设置特定容器的日志记录驱动程序。--log-driver旗子docker createdocker run*

$ docker run \
      -–log-driver json-file --log-opt max-size=10m \
      alpine echo hello world

备选方案

json-file日志驱动程序支持以下日志记录选项:

选项

描述

示例值

最大尺寸

滚动前日志的最大大小。一个正整数加上一个代表测量单位(k,m或g)的修饰符。默认为-1(无限制)。

--log-opt max-size = 10m

最大文件

可以存在的最大日志文件数量。如果滚动日志会创建多余的文件,最旧的文件将被删除。只有在设置了最大尺寸时才有效。一个正整数。默认为1。

--log-opt max-file = 3

标签

在启动Docker守护进程时适用。此守护程序将接受的与日志相关的标签的逗号分隔列表。用于高级日志标记选项。

--log-opt labels = production_status,地理位置

在启动Docker守护进程时适用。这个守护程序将接受的与日志相关的环境变量的逗号分隔列表。用于高级日志标记选项。

--log-opt env = os,客户

ENV正则表达式

与env类似且兼容。一个正则表达式来匹配与日志相关的环境变量。用于高级日志标记选项。

--log-opt env-regex = ^(os | customer)。

*如果max-sizemax-file都准备好了,docker logs只返回最新日志文件中的日志行。

实例

此示例启动一个alpine容器,最多可以有3个日志文件,每个不大于10 MB。

$ docker run -it --log-opt max-size=10m --log-opt max-file=3 alpine ash

json文件,码头工具,日志记录,驱动程序

引擎: 管理员指南 | Engine: Admin Guide相关

1.Amazon CloudWatch记录日志记录驱动程序(引擎) | Amazon CloudWatch logs logging driver (Engine)
2. 绑定挂载 | Bind mounts (Engine)
3.使用Prometheus(引擎)收集Docker指标 | Collect Docker metrics with Prometheus (Engine)
4.配置和运行Docker(引擎) | Configuring and running Docker (Engine)
5.配置日志记录驱动程序 | Configuring logging drivers (Engine)
6.使用systemd控制和配置Docker(引擎) | Control and configure Docker with systemd (Engine)
7.ETW日志记录驱动程序(引擎) | ETW logging driver (Engine)
8.流利的日志驱动程序(引擎) | Fluentd logging driver (Engine)
9.格式化命令和日志输出(引擎) | Format command and log output (Engine)
10.Google Cloud日志记录驱动程序(引擎) | Google Cloud logging driver (Engine)
11.Graylog扩展格式(GELF)日志记录驱动程序(引擎) | Graylog Extended Format (GELF) logging driver (Engine)
12.Journald日志记录驱动程序(引擎) | Journald logging driver (Engine)
13.在守护进程停机期间保持容器处于活动状态(引擎) | Keep containers alive during daemon downtime (Engine)
14.限制容器的资源(引擎) | Limit a container's resources (Engine)
15.通过大使容器链接(引擎) | Link via an ambassador container (Engine)
16.记录驱动程序的日志标记(引擎) | Log tags for logging driver (Engine)
17.Logentries日志驱动程序(引擎) | Logentries logging driver (Engine)
18.PowerShell DSC用法(引擎) | PowerShell DSC usage (Engine)
19.修剪未使用的Docker对象(引擎) | Prune unused Docker objects (Engine)
20.在容器中运行多个服务(引擎) | Run multiple services in a container (Engine)
21.运行时指标(引擎) | Runtime metrics (Engine)
22.Splunk日志记录驱动程序(引擎) | Splunk logging driver (Engine)
23.自动启动容器(引擎) | Start containers automatically (Engine)
24.存储概述(引擎) | Storage overview (Engine)
25.Syslog日志记录驱动程序(引擎) | Syslog logging driver (Engine)
26.tmpfs mounts
27.解决卷问题(引擎) | Troubleshoot volume problems (Engine)
28.使用日志驱动程序插件(引擎) | Use a logging driver plugin (Engine)
29.使用Ansible(引擎) | Using Ansible (Engine)
30.使用Chef(引擎) | Using Chef (Engine)
31.使用Puppet(引擎) | Using Puppet (Engine)
32.查看容器的日志(引擎) | View a container's logs (Engine)
33.Volumes (Engine)
Docker 17

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

主页 https://docker.com/
源码 https://github.com/docker/docker
版本 17
发布版本 17.06