Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化。Docker是内核虚拟化,不使用Hypervisor是不完全虚拟化,依赖内核的特性实现资源隔离。本文主要介绍Docker CLI 中 docker service logs 常用命令。

1、docker service logs 简介

docker service logs 命令是用于获取一个服务或任务的日志。

此命令与Swarm orchestrator一起工作。

docker service logs 命令用于批量检索在执行时存在的日志。

注意:

这是一个集群管理命令,必须在 Swarm 管理节点上执行。有关管理节点和工作节点的信息,请参阅文档中的 Swarm 模式部分。docker service logs 命令可以使用服务的名称或 ID,或者任务的 ID 进行使用。如果传递了一个服务,它将显示该服务中所有容器的日志。如果传递了一个任务,它将仅显示该特定任务的日志。

此命令仅适用于使用 json-file 或 journald 日志驱动程序启动的服务。

参考文档https://docs.docker.com/engine/reference/commandline/service_logs/

2、docker service logs 语法

docker service logs [OPTIONS] SERVICE|TASK

3、docker service logs 命令

1)要获取特定服务的日志,可以运行以下命令:

docker service logs <service_name>

例如,要获取名为 "my-service" 的服务的日志:

docker service logs my-service

2)如果要获取特定任务的日志,可以在命令中指定任务的 ID:

docker service logs <task_id>

例如,要获取任务 ID 为 "abc123" 的任务的日志:

docker service logs abc123

默认情况下,日志将以标准输出的形式显示在终端上。您可以使用其他选项来控制日志的输出,例如通过 --follow 选项实时跟踪日志、通过 --tail 选项限制日志的行数等。

命令的输出将包含所请求服务或任务的日志内容。

4、命令选项

名称

默认值

描述

--details

显示日志提供的额外详细信息

--follow, -f

跟随日志输出

--no-resolve

在输出中不将 ID 解析为名称

--no-task-ids

在输出中不包含任务 ID

--no-trunc

不截断输出

--raw

不对日志进行整齐的格式化

--since

显示自指定时间戳开始的日志

(例如 2013-01-02T13:23:37Z)

或相对时间(例如 42m 表示 42 分钟)

--tail, -n

all

从日志末尾显示的行数

--timestamps, -t

显示时间戳

5、子命令

命令

描述

docker service create

创建新的服务

docker service inspect

显示一个或多个服务的详细信息

docker service logs

获取一个服务或任务的日志

docker service ls

列出服务

docker service ps

列出一个或多个服务的任务

docker service rm

删除一个或多个服务

docker service rollback

恢复服务配置的更改

docker service scale

缩放一个或多个复制的服务

docker service update

更新一个服务的配置

推荐文档

相关文档

大家感兴趣的内容

随机列表