docker node ps
| 描述 | 列出一个或多个节点上运行的任务,默认为当前节点 |
|---|---|
| 用法 | docker node ps [OPTIONS] [NODE...] |
Swarm 此命令适用于 Swarm 调度器。
描述
列出 Docker 已知的节点上的所有任务。您可以使用
-f 或 --filter 标志进行筛选。有关可用筛选选项的更多信息,请参阅
筛选部分。
注意
这是一个集群管理命令,必须在 Swarm 管理节点上执行。要了解管理节点和工作节点,请参阅文档中的Swarm 模式部分。
选项
| 选项 | 默认 | 描述 |
|---|---|---|
-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 过滤器匹配任务名称的全部或部分。
以下筛选器匹配所有名称包含 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 和一个值来匹配任务。
以下筛选器匹配带有 usage 标签的任务,无论其值为何。
$ 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