docker node ps
内容説明 | 1 つまたは複数ノードにおいて実行中のタスク一覧を表示します。デフォルトはカレントノードのみです。 |
---|---|
利用方法 | 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
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 言語テンプレートによるプレースホルダー(placeholder)は以下のとおりです。
プレースホルダー | 内容説明 |
---|---|
.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