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

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 過濾器根據是否存在 labellabel 和值來匹配任務。

以下過濾器匹配具有 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 過濾器可以接受 runningshutdownaccepted 值。

格式化輸出 (--format)

格式化選項 (--format) 使用 Go 模板美觀地列印任務輸出。

Go 模板的有效佔位符如下所示

佔位符描述
.ID任務 ID
.Name任務名稱
.Image任務映象
.Node節點 ID
.DesiredState任務的期望狀態(runningshutdownaccepted
.CurrentState任務的當前狀態
.Error錯誤
.Ports任務釋出的埠

使用 --format 選項時,node ps 命令將完全按照模板宣告輸出資料,或者在使用 table 指令時,還包括列標題。

以下示例使用不帶標題的模板,並輸出所有任務的 NameImage 條目,以冒號 (:) 分隔

$ docker node ps --format "{{.Name}}: {{.Image}}"

top.1: busybox
top.2: busybox
top.3: busybox