ls¶
使い方: docker-machine ls [オプション] [引数...]
マシン一覧を表示
オプション:
--quiet, -q 静かな (quite) モードを有効化
--filter [--filter option --filter option] 指定した状況に応じてフィルタを出力
--timeout, -t "10" タイムアウトを秒数で指定。デフォルトは 10 秒
--format, -f Go テンプレートに一致する内容で表示
タイムアウト¶
ls コマンドは各ホストに対し、到達性を並列に確認します。対象のホストが 10 秒間応答しなければ、 ls コマンドで対象ホストの情報を Timeout 状態として表示します。同様の状況(接続が貧弱、高負荷、あるいはその他トラブルシューティング)では、値を上下させたくなるでしょう。 -t フラグを使い、整数値で秒数を指定できます。
フィルタリング¶
フィルタリング・フラグ( --filter )の指定は key=value のペア形式です。複数のフィルタを使う場合は、複数のフラグを使います(例: --filter "foo=bar" --filter "bif=baz" )。
現時点でサポートしているフィルタは次の通りです。
- driver(ドライバ名)
- swarm(swarm のマスタ名)
- state (状態:
Running|Paused|Saved|Stopped|Stopping|Starting|Error) - name(ドライバが返すマシン名であり、 Go 言語形式 の正規表現をサポート )
- label(マシンを
--engine-labelオプションで作成すると、label=<key>[=<value>]形式でフィルタできる )
例¶
$ docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
dev - virtualbox Stopped
foo0 - virtualbox Running tcp://192.168.99.105:2376 v1.9.1
foo1 - virtualbox Running tcp://192.168.99.106:2376 v1.9.1
foo2 * virtualbox Running tcp://192.168.99.107:2376 v1.9.1
$ docker-machine ls --filter name=foo0
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
foo0 - virtualbox Running tcp://192.168.99.105:2376 v1.9.1
$ docker-machine ls --filter driver=virtualbox --filter state=Stopped
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
dev - virtualbox Stopped v1.9.1
$ docker-machine ls --filter label=com.class.app=foo1 --filter label=com.class.app=foo2
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
foo1 - virtualbox Running tcp://192.168.99.105:2376 v1.9.1
foo2 * virtualbox Running tcp://192.168.99.107:2376 v1.9.1
書式¶
マシンの結果を分かりやすくするため、書式オプション( --format )で Go 言語のテンプレートが使えます。
以下の Go テンプレートをプレースホルダに指定可能です。
| プレースホルダ | 説明 |
|---|---|
| .Name | マシン名 |
| .Active | マシンがアクティブか |
| .ActiveHost | マシンがアクティブな Swarm のホストではないか |
| .ActiveSwarm | マシンがアクティブな Swarm マスタか |
| .DriverName | ドライバ名 |
| .State | マシンの状態(実行中、停止中など) |
| .URL | マシン URL |
| .Swarm | マシンの Swarm 名 |
| .Error | マシンのエラー |
| .DockerVersion | Docker デーモンのバージョン |
| .ResponseTime | ホストの応答時間 |
ls コマンドで --format オプションを使うと、テンプレートから自分が必要なデータだけ出力できます。また table 命令を使うと、ヘッダ部分も調整可能です。
以下の例では Name と Driver のエントリをヘッダ情報無しに表示します。
$ docker-machine ls --format "{{.Name}}: {{.DriverName}}"
default: virtualbox
ec2: amazonec2
全てのマシン名とドライバを表形式(table format)で表示できます。
$ docker-machine ls --format "table {{.Name}} {{.DriverName}}"
NAME DRIVER
default virtualbox
ec2 amazonec2