码头节点ls

描述

列出群中的节点

API 1.24+  客户端和守护程序API都必须至少为 1.24, 才能使用此命令。docker version在客户端上使用命令检查客户端和守护程序API版本。

Swarm此命令与Swarm协调器一起使用。

用法

$ docker node ls [OPTIONS]

扩展说明

列出Docker Swarm管理器知道的所有节点。您可以使用-f--filter标志进行过滤。有关可用过滤器选项的更多信息,请参阅过滤器部分。

笔记

这是集群管理命令,必须在集群管理器节点上执行。要了解管理人员和工作人员,请参阅文档中的“ 群集模式”部分

有关此命令的示例用法,请参阅下面的示例部分

选项

名称,简写 默认 描述
--filter-f 根据提供的条件过滤输出
--format 使用Go模板打印漂亮的节点
--quiet-q 仅显示ID

例子

$ docker node ls

ID                           HOSTNAME        STATUS  AVAILABILITY  MANAGER STATUS
1bcef6utixb0l0ca7gxuivsj0    swarm-worker2   Ready   Active
38ciaotwjuritcdtn9npbnkuz    swarm-worker1   Ready   Active
e216jshn25ckzbvmwlnh5jr3g *  swarm-manager1  Ready   Active        Leader

笔记

在上面的示例输出中,存在一个隐藏列,.Self该隐藏列指示该节点是否与当前docker守护程序相同。甲*(例如, e216jshn25ckzbvmwlnh5jr3g *)指该节点是当前搬运工守护程序。

筛选

过滤标志(-f--filter)的格式为“键=值”。如果有多个过滤器,则传递多个标志(例如--filter "foo=bar" --filter "bif=baz"

当前支持的过滤器是:

ID

id过滤器匹配节点的ID的全部或部分。

$ docker node ls -f id=1

ID                         HOSTNAME       STATUS  AVAILABILITY  MANAGER STATUS
1bcef6utixb0l0ca7gxuivsj0  swarm-worker2  Ready   Active

标签

label过滤器相匹配基于发动机标签和在存在节点 label单独或label和值。引擎标签在守护程序配置中配置。要过滤Swarmnode标签,请node.label改用

以下过滤器将节点与foo标签匹配,而不管其值如何。

$ docker node ls -f "label=foo"

ID                         HOSTNAME       STATUS  AVAILABILITY  MANAGER STATUS
1bcef6utixb0l0ca7gxuivsj0  swarm-worker2  Ready   Active

节点标签

node.label过滤器相匹配基于节点的标签和一个上的存在节点node.label单独或node.label和值。

以下过滤器将region节点更新为具有节点标签:

$ docker node update --label-add region=region-a swarm-test-01
$ docker node update --label-add region=region-a swarm-test-02
$ docker node update --label-add region=region-b swarm-test-03
$ docker node update --label-add region=region-b swarm-test-04

显示所有region设置了节点标签的节点:

$ docker node ls --filter node.label=region

ID                            HOSTNAME        STATUS    AVAILABILITY   MANAGER STATUS   ENGINE VERSION
yg550ettvsjn6g6t840iaiwgb *   swarm-test-01   Ready     Active         Leader           20.10.2
2lm9w9kbepgvkzkkeyku40e65     swarm-test-02   Ready     Active         Reachable        20.10.2
hc0pu7ntc7s4uvj4pv7z7pz15     swarm-test-03   Ready     Active         Reachable        20.10.2
n41b2cijmhifxxvz56vwrs12q     swarm-test-04   Ready     Active                          20.10.2

显示所有带有region节点标签的节点,其值是region-a

$ docker node ls --filter node.label=region=region-a

ID                            HOSTNAME        STATUS    AVAILABILITY   MANAGER STATUS   ENGINE VERSION
yg550ettvsjn6g6t840iaiwgb *   swarm-test-01   Ready     Active         Leader           20.10.2
2lm9w9kbepgvkzkkeyku40e65     swarm-test-02   Ready     Active         Reachable        20.10.2

会员资格

membership过滤器相匹配的基础上一个存在的节点membership和一个值 acceptedpending

下面的过滤器相匹配的节点用membershipaccepted

$ docker node ls -f "membership=accepted"

ID                           HOSTNAME        STATUS  AVAILABILITY  MANAGER STATUS
1bcef6utixb0l0ca7gxuivsj0    swarm-worker2   Ready   Active
38ciaotwjuritcdtn9npbnkuz    swarm-worker1   Ready   Active

名称

name过滤器在节点主机名的全部或部分上匹配。

以下过滤器匹配名称等于swarm-master字符串的节点。

$ docker node ls -f name=swarm-manager1

ID                           HOSTNAME        STATUS  AVAILABILITY  MANAGER STATUS
e216jshn25ckzbvmwlnh5jr3g *  swarm-manager1  Ready   Active        Leader

角色

role过滤器相匹配的基础上一个存在的节点role和一个值workermanager

以下过滤器将manager角色匹配的节点进行匹配。

$ docker node ls -f "role=manager"

ID                           HOSTNAME        STATUS  AVAILABILITY  MANAGER STATUS
e216jshn25ckzbvmwlnh5jr3g *  swarm-manager1  Ready   Active        Leader

格式设定

格式化选项(--format)使用Go模板漂亮地打印输出的节点。

下面列出了Go模板的有效占位符:

占位符 描述
.ID 节点编号
.Self 守护程序的节点(true/falsetrue表示该节点与当前的docker守护程序相同)
.Hostname 节点主机名
.Status 节点状态
.Availability 节点可用性(“活动”,“暂停”或“耗尽”)
.ManagerStatus 节点的管理者状态
.TLSStatus 节点的TLS状态(“就绪”或“需要轮换”具有由旧CA签名的TLS证书)
.EngineVersion 引擎版本

当使用该--format选项时,该node ls命令将完全按照模板声明的方式输出数据,或者在使用 table指令时也包括列标题。

下面的示例使用的模板没有报头,并输出 IDHostname以及TLS Status由冒号(分隔的条目:)的所有节点:

$ docker node ls --format "{{.ID}}: {{.Hostname}} {{.TLSStatus}}"
e216jshn25ckzbvmwlnh5jr3g: swarm-manager1 Ready
35o6tiywb700jesrt3dmllaza: swarm-worker1 Needs Rotation

上级命令

命令 描述
码头工人节点 管理Swarm节点
命令 描述
码头节点降级 从群中的管理器降级一个或多个节点
码头节点检查 在一个或多个节点上显示详细信息
码头节点ls 列出群中的节点
docker节点提升 将一个或多个节点提升为集群中的管理器
码头节点ps 列出在一个或多个节点上运行的任务,默认为当前节点
码头节点rm 从群中删除一个或多个节点
码头节点更新 更新节点