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フィルターにはrunningshutdownacceptedを指定することができます。

フォーマット設定

フォーマット設定オプション(--format)により Go 言語のテンプレートを利用して、タスクをわかりやすく出力することができます。

Go 言語テンプレートによるプレースホルダー(placeholder)は以下のとおりです。

プレースホルダー 内容説明
.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

上位コマンド

コマンド 説明
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 ノードを更新します。