docker node ps
読む時間の目安: 3 分
説明
1 つまたは複数ノードにおいて実行中のタスク一覧を表示します。デフォルトはカレントノードのみです。
API 1.24 以上
このコマンドを利用するには、クライアントとデーモンの API はともに、最低でも
1.24
である必要があります。
クライアント上においてdocker versionコマンドを実行して、クライアントとデーモンの API バージョンを確認してください。
Swarm このコマンドは Swarm オーケストレーターにおいて動作します。
利用方法
$ docker node ps [オプション] [NODE...]
追加説明
Docker が管理しているノード上でのタスクを一覧表示します。
-fまたは--filterフラグを使ってフィルター検索を行うことができます。
フィルター検索時のオプションの詳細は フィルター検索 の節を参照してください。
メモ
これはクラスター管理コマンドであるため、Swarm のマネージャーノード上で実行する必要があります。 マネージャーノードとワーカーノードについては、本ドキュメントの Swarm モード を参照してください。
本コマンドの利用例については、以下に示す 利用例の節 を参照してください。
オプション
| 名前/省略形 | デフォルト | 説明 |
--filter , -f |
指定された条件に基づいてフィルター検索を行います。 | |
--format |
Go 言語テンプレートを使って出力をフォーマットします。 | |
--no-resolve |
ノード ID からノード名にマップしません。 | |
--no-trunc |
詳細出力を行います。 | |
--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だけが存在する、あるいは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 フィルター
desired-stateフィルターにはrunning、shutdown、acceptedを指定することができます。
フォーマット設定
フォーマット設定オプション(--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
上位コマンド
| コマンド | 説明 |
|---|---|
| docker node | Swarm ノードを管理します。 |
関連コマンド
| コマンド | 説明 |
| docker node demote | Swarm 内において 1 つあるいは複数のノードをマネージャーから降格させます。 |
| docker node inspect | 1 つまたは複数ノードに関する詳細情報を表示します。 |
| docker node ls | Swarm 内ノードを一覧表示します。 |
| docker node promote | Swarm 内において 1 つまたは複数ノードをマネージャーに昇格させます。 |
| docker node ps | 1 つまたは複数ノードにおいて実行中のタスク一覧を表示します。デフォルトはカレントノードのみです。 |
| docker node rm | 1 つまたは複数ノードを Swarm から削除します。 |
| docker node update | ノードを更新します。 |