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