Docker 包含多种日志记录机制,可帮助您 从正在运行的容器和服务中获取信息。这些机制称为日志驱动程序。每个 Docker 守护进程都有一个默认的日志驱动程序,每个容器都会使用它,除非您将其配置为使用不同的日志驱动程序,或简称为“log-driver”。
默认情况下,Docker 使用json-filelogging driver,它在内部将容器日志缓存为 JSON。除了使用 Docker 附带的日志驱动程序,您还可以实现和使用日志驱动程序插件。
配置默认日志驱动
要将 Docker 守护程序配置为默认使用特定的日志驱动程序,请将 的值设置log-driver为daemon.json 配置文件中日志驱动程序的名称。有关详细信息,请参阅dockerd参考手册中的“守护程序配置文件”部分 。
默认的日志驱动程序是json-file. 以下示例将默认日志记录驱动程序设置为local日志驱动程序:
{
“log-driver”: “local”
}
如果日志驱动程序具有可配置的选项,您可以在daemon.json文件中将它们设置 为带有键的 JSON 对象log-opts。以下示例在json-file日志记录驱动程序上设置了两个可配置选项:
{
“log-driver”: “json-file”,
“log-opts”: {
“max-size”: “10m”,
“max-file”: “3”,
“labels”: “production_status”,
“env”: “os,customer”
}
}
重新启动 Docker 以使更改对新创建的容器生效。现有容器不使用新的日志记录配置。
如果未指定日志记录驱动程序,则默认为json-file. 要查找 Docker 守护程序的当前默认日志记录驱动程序,请运行 docker info并搜索Logging Driver. 您可以在 Linux、macOS 或 Windows 上的 PowerShell 上使用以下命令:
$ docker info –format {{.LoggingDriver}}
json-file
为容器配置日志驱动程序
当您启动一个容器时,您可以使用–log-driver标志将其配置为使用不同于 Docker 守护程序默认值的日志记录驱动程序。如果日志驱动程序具有可配置选项,您可以使用一个或多个–log-opt=标志实例来设置它们。即使容器使用默认日志驱动程序,它也可以使用不同的可配置选项。
以下示例使用none日志驱动程序启动 Alpine 容器。
$ docker run -it –log-driver none alpine ash
要查找正在运行的容器的当前日志记录驱动程序,如果守护程序正在使用json-file日志记录驱动程序,请运行以下docker inspect 命令,用容器名称或 ID 替换:
$ docker inspect -f {{.HostConfig.LogConfig.Type}}
json-file
Ubuntu是一个以桌面应用为主的Linux操作系统。它是一个开放源代码的自由软件,提供了一个健壮、功能丰富的计算环境,既适合家庭使用又适用于商业环境。Ubuntu将为全球数百个公司提供商业支持。 ...
查看全文Docker采取了一种保守的方法来清理未使用的对象(通常称为“垃圾收集”),例如图像,容器,卷和网络:除非您明确要求Docker这样做,否则通常不会删除这些对象。这可能会导致Docker使用额外的磁盘空...
查看全文新浪科技讯 北京时间5月27日晚间消息,据报道,四位知情人士今日透露,亚马逊、微软和谷歌这三大云计算服务提供商,正在竞争波音公司(Boeing)价值10亿美元的云服务合同。 这些...
查看全文新浪科技讯 北京时间5月27日晚间消息,据报道,多位知情人士今日称,继加州、纽约州和华盛顿州之后,马萨诸塞州和宾夕法尼亚州的总检察长也加入到对亚马逊的反垄断调查中。 如今,越来越...
查看全文
您好!请登录