docker node ps
描述 | 列出在一个或多个节点上运行的任务,默认为当前节点 |
---|---|
用法 | docker node ps [OPTIONS] [NODE...] |
Swarm 此命令适用于 Swarm 编排器。
描述
列出 Docker 已知的所有节点上的任务。您可以使用 -f
或 --filter
标志进行过滤。有关可用过滤选项的更多信息,请参阅过滤部分。
注意
这是一个集群管理命令,必须在 swarm 管理器节点上执行。要了解有关管理器和工作节点的更多信息,请参阅文档中的 Swarm mode 部分。
选项
选项 | 默认值 | 描述 |
---|---|---|
-f, --filter | 根据提供的条件过滤输出 | |
--format | 使用 Go 模板美观地打印任务输出 | |
--no-resolve | 不将 ID 映射到名称 | |
--no-trunc | 不截断输出 | |
-q, --quiet | 仅显示任务 ID |
示例
$ docker node ps swarm-manager1
NAME IMAGE NODE DESIRED STATE CURRENT STATE
redis.1.7q92v0nr1hcgts2amcjyqg3pq redis:7.4.1 swarm-manager1 Running Running 5 hours
redis.6.b465edgho06e318egmgjbqo4o redis:7.4.1 swarm-manager1 Running Running 29 seconds
redis.7.bg8c07zzg87di2mufeq51a2qp redis:7.4.1 swarm-manager1 Running Running 5 seconds
redis.9.dkkual96p4bb3s6b10r7coxxt redis:7.4.1 swarm-manager1 Running Running 5 seconds
redis.10.0tgctg8h8cech4w0k0gwrmr23 redis:7.4.1 swarm-manager1 Running Running 5 seconds
过滤 (--filter)
过滤标志(-f
或 --filter
)的格式为 "key=value"。如果存在多个过滤器,则传递多个标志(例如,--filter "foo=bar" --filter "bif=baz"
)。
当前支持的过滤器有
name
name
过滤器匹配任务名称的全部或部分。
以下过滤器匹配名称包含 redis
字符串的所有任务。
$ docker node ps -f name=redis swarm-manager1
NAME IMAGE NODE DESIRED STATE CURRENT STATE
redis.1.7q92v0nr1hcgts2amcjyqg3pq redis:7.4.1 swarm-manager1 Running Running 5 hours
redis.6.b465edgho06e318egmgjbqo4o redis:7.4.1 swarm-manager1 Running Running 29 seconds
redis.7.bg8c07zzg87di2mufeq51a2qp redis:7.4.1 swarm-manager1 Running Running 5 seconds
redis.9.dkkual96p4bb3s6b10r7coxxt redis:7.4.1 swarm-manager1 Running Running 5 seconds
redis.10.0tgctg8h8cech4w0k0gwrmr23 redis:7.4.1 swarm-manager1 Running Running 5 seconds
id
id
过滤器匹配任务的 ID。
$ docker node ps -f id=bg8c07zzg87di2mufeq51a2qp swarm-manager1
NAME IMAGE NODE DESIRED STATE CURRENT STATE
redis.7.bg8c07zzg87di2mufeq51a2qp redis:7.4.1 swarm-manager1 Running Running 5 seconds
label
label
过滤器根据是否存在 label
本身或 label
及其值来匹配任务。
以下过滤器匹配带有 usage
label 的任务,无论其值如何。
$ docker node ps -f "label=usage"
NAME IMAGE NODE DESIRED STATE CURRENT STATE
redis.6.b465edgho06e318egmgjbqo4o redis:7.4.1 swarm-manager1 Running Running 10 minutes
redis.7.bg8c07zzg87di2mufeq51a2qp redis:7.4.1 swarm-manager1 Running Running 9 minutes
desired-state
desired-state
过滤器可以接受 running
、shutdown
或 accepted
等值。
格式化输出 (--format)
格式化选项(--format
)使用 Go 模板美观地打印任务输出。
Go 模板的有效占位符如下所示
占位符 | 描述 |
---|---|
.ID | 任务 ID |
.Name | 任务名称 |
.Image | 任务镜像 |
.Node | 节点 ID |
.DesiredState | 任务的期望状态(running 、shutdown 或 accepted ) |
.CurrentState | 任务的当前状态 |
.Error | 错误 |
.Ports | 任务发布的端口 |
使用 --format
选项时,node ps
命令将按照模板声明的方式精确输出数据,或者在使用 table
指令时,还会包含列标题。
以下示例使用不带标题的模板,并输出所有任务的 Name
和 Image
条目,它们之间用冒号(:
)分隔
$ docker node ps --format "{{.Name}}: {{.Image}}"
top.1: busybox
top.2: busybox
top.3: busybox