docker node ps

説明

1つまたは複数のノード上で実行しているタスク一覧を表示します。デフォルトは現在のノード上です。

【API 1.24+】このコマンドを使うには、クライアントとデーモン API の両方が、少なくとも 1.24 の必要があります。クライアントとデーモン API のバージョンを調べるには、 docker version コマンドを使います。

【Swarm】このコマンドは Swarm オーケストレータで動作します。

使い方

$ docker node ps [OPTIONS] [NODE...]

補足説明

Docker Swarm マネージャ自身が把握している全ノード一覧を表示します。 -f--filter フラグを使い、フィルタできます。利用可能なフィルタの詳しいオプションについては、 フィルタリング のセクションをご覧ください。

注釈

これはクラスタ管理コマンドであり、 swarm manager ノードで実行する必要があります。manager と worker について学ぶには、ドキュメント内の Swarm モードのセクション を参照ください。

コマンドの使用例は、以下の 使用例のセクション をご覧ください。

オプション

名前, 省略形 デフォルト 説明
--filter , -f   指定した状況に基づき出力をフィルタ
--format   指定した Go テンプレートを使って出力を整形
--no-resolve   ID を名前に割り当てない(マップしない)
--no-trunk   出力を省略しない
--quiet , -q   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

フィルタリング

フィルタリング・フラグ( -f--filter )の書式は「キー=値」です。複数のフィルタを指定するには、複数回フラグを指定します(例: --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: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 フィルタは label 単独か label と値のどちらかに現れるタスクに一致します。

以下のフィルタは、値にかかわらず 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

disired-state フィルタの値は runningshutdownaccepted です。

表示形式

フォーマット・オプション( --format )は Go テンプレートを使いノードの出力を見やすくします。

Go テンプレートで有効なプレースホルダは以下の通りです。

プレースホルダ 説明
.ID タスク ID
.Name タスク名
.Image タスクのイメージ
.Node Node ID
.DesiredState タスクの 期待状態(desired state)runningshutdownaccepted
.CurrentState タスクの現在の状態
.Error エラー
.Ports タスク公開ポート

--format オプションの使用時、 node ps コマンドはテンプレートで宣言した通りにデータを出力します。あるいは、 table ディレクティブがあれば列のヘッダも表示するかのどちらかです。

以下の例は NameImage のエントリをテンプレートで指定します。そして、コロン( : )区切りで全てのタスクを表示します。

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

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

親コマンド

コマンド 説明
docker node Swarm ノードを管理

関連コマンド

コマンド 説明
docker node demote swarm 内の manager から1つまたは複数のノードを 降格(demote)
docker node inspect 1つまたは複数ノードの詳細情報を表示
docker node ls swarm 内のノードを一覧表示
docker node promote swarm 内の1つまたは複数のノードを manager に 昇格(promote)
docker node ps 1つまたは複数のノード上で実行しているタスク一覧を表示。デフォルトは現在のノード上
docker node rm swarm 内の1つまたは複数のノードを削除
docker node update ノードを更新