docker node ps

說明列出在一或多個節點上執行的任務,預設為目前節點
用法docker node ps [選項] [節點...]

Swarm 此指令適用於 Swarm Orchestrator。

說明

列出 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:3.0.6  swarm-manager1  Running        Running 5 hours
redis.6.b465edgho06e318egmgjbqo4o   redis:3.0.6  swarm-manager1  Running        Running 29 seconds
redis.7.bg8c07zzg87di2mufeq51a2qp   redis:3.0.6  swarm-manager1  Running        Running 5 seconds
redis.9.dkkual96p4bb3s6b10r7coxxt   redis:3.0.6  swarm-manager1  Running        Running 5 seconds
redis.10.0tgctg8h8cech4w0k0gwrmr23  redis:3.0.6  swarm-manager1  Running        Running 5 seconds

篩選 (--filter)

篩選旗標 (-f--filter) 的格式為「鍵=值」。如果有多個篩選器,請傳遞多個旗標(例如,--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:3.0.6  swarm-manager1  Running        Running 5 hours
redis.6.b465edgho06e318egmgjbqo4o   redis:3.0.6  swarm-manager1  Running        Running 29 seconds
redis.7.bg8c07zzg87di2mufeq51a2qp   redis:3.0.6  swarm-manager1  Running        Running 5 seconds
redis.9.dkkual96p4bb3s6b10r7coxxt   redis:3.0.6  swarm-manager1  Running        Running 5 seconds
redis.10.0tgctg8h8cech4w0k0gwrmr23  redis:3.0.6  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:3.0.6  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:3.0.6  swarm-manager1  Running        Running 10 minutes
redis.7.bg8c07zzg87di2mufeq51a2qp  redis:3.0.6  swarm-manager1  Running        Running 9 minutes

期望狀態

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