list - クラスタ上のノード一覧

list を使うとクラスタ上のノード一覧を表示します。

クラスタのノードを表示するには、次の構文を使います。

docker run swarm list [OPTIONS] <discovery>

次の例は <discovery> 引数を使う構文の例です。

etcd:

swarm list etcd://<etcd_addr1>,<etcd_addr2>/<optional path prefix> <node_ip:port>

Consul:

swarm list consul://<consul_addr>/<optional path prefix> <node_ip:port>

ZooKeeper:

swarm list zk://<zookeeper_addr1>,<zookeeper_addr2>/<optional path prefix> <node_ip:port>

引数

list コマンドは引数が1つだけあります。

<discovery> - ディスカバリ・バックエンド

list コマンドの使用時、 <discovery> 引数を使って以下のバックエンドを指定可能です。

  • token://<token>
  • consul://<ip1>/<path>
  • etcd://<ip1>,<ip2>,<ip2>/<path>
  • file://<path/to/file>
  • zk://<ip1>,<ip2>/<path>
  • [nodes://]<iprange>,<iprange>

それぞれの項目は:

  • <token> はDocker Hub のホステッド・ディスカバリ・サービスによって生成されるトークンです。このトークンを作成するには create コマンドを使います。

警告

Docker Hub のホステッド・ディスカバリ・バックエンドは、プロダクション環境での利用が推奨されていません。テストもしくは開発用での利用を想定しています。

  • ip1ip2ip3 はディスカバリ・バックエンド用ノードの IP アドレスとポート番号を指定します。
  • path (オプション)はディスカバリ・バックエンドのキーバリュー・ストアのパスを指定します。複数のクラスタを1つのバックエンドで管理する場合は、各クラスタごとにキーバリューのペアを記述する必要があります。
  • path/to/file はSwarm マネージャとクラスタのメンバであるノード情報の一覧と、それぞれの静的な IP アドレスのリストを指定したファイルのパスを指定します。
  • iprange は特定のポート番号を利用する IP アドレスの範囲を指定します。

実行例:

  • ディスカバリ・トークン: token://0ac50ef75c9739f5bfeeaf00503d4e6e
  • Consul ノード: consul://172.30.0.165:8500

<discovery> は環境変数 $SWARM_DISCOVERY でも指定可能です。

より詳しい情報やサンプルについては、 Docker Swarm ディスカバリ をご覧ください。

オプション

list コマンドには以下のオプションがあります。

--timeout - タイムアウト期間

--timeout="<期間>秒" はタイムアウトまでの感覚を秒で指定します。これは、ディスカバリ・バックエンドが一覧を返すまで待つ時間です。デフォルトの間隔は 10s です。

--discovery-opt - ディスカバリ・オプション

ディスカバリ・オプションに --discovery-opt <value> を使い、 TLS 設定で使用するファイル(CA 公開鍵証明書、証明書)のパスや、分散キーバリュー・ストアのディスカバリ・バックエンドを指定します。このオプションは複数回利用可能です。例:

--discovery-opt kv.cacertfile=/path/to/mycacert.pem \
--discovery-opt kv.certfile=/path/to/mycert.pem \
--discovery-opt kv.keyfile=/path/to/mykey.pem \

より詳しい情報は Docker Swarm ディスカバリ をご覧ください。

参考

list — List the nodes in a cluster
https://docs.docker.com/swarm/reference/list/