docker stack deploy
読む時間の目安: 3 分
説明
新規 Stack のデプロイ、または既存 Stack の更新を行います。
API 1.25 以上
このコマンドを利用するには、クライアントとデーモンの API はともに、最低でも
1.25
である必要があります。
クライアント上においてdocker version
コマンドを実行して、クライアントとデーモンの API バージョンを確認してください。
利用方法
$ docker stack deploy [オプション] STACK
追加説明
compose
ファイルに基づいて Swarm 上の Stack を生成または更新します。
メモ
これはクラスター管理コマンドです。 したがって Swarm 上のマネージャーノードにおいて実行する必要があります。 マネージャーノードやワーカーノードについては、Swarm モード を参照してください。
本コマンドの利用例については、以下に示す 利用例の節 を参照してください。
オプション
名前/省略形 | デフォルト | 説明 |
--compose-file , -c |
API 1.25 以上 Compose ファイルへのパス、または「-」により標準入力を指定します。 |
|
--namespace |
deprecatedKubernetes Kubernetes 名前空間を指定します。 |
|
--prune |
API 1.27 以上Swarm 参照されなくなったサービスを取り除きます。 |
|
--resolve-image |
always |
API 1.30 以上Swarm レジストリを検索して、イメージのダイジェスト値と対応プラットフォームを解決します。("always"|"changed"|"never") |
--with-registry-auth |
Swarm Swarm エージェントに対して、レジストリ認証情報を送信します。 |
|
--kubeconfig |
deprecatedKubernetes Kubernetes 設定ファイルを指定します。 |
|
--orchestrator |
deprecated オーケストレーターを指定します。(swarm|kubernetes|all) |
利用例
Compose ファイル
deploy
コマンドは Compose ファイルバージョン3.0
またはそれ以降に対応しています。
$ docker stack deploy --compose-file docker-compose.yml vossibility
Ignoring unsupported options: links
Creating network vossibility_vossibility
Creating network vossibility_default
Creating service vossibility_nsqd
Creating service vossibility_logstash
Creating service vossibility_elasticsearch
Creating service vossibility_kibana
Creating service vossibility_ghollector
Creating service vossibility_lookupd
Compose ファイルは--compose-file -
とすることで、標準入力から指定することもできます。
$ cat docker-compose.yml | docker stack deploy --compose-file - vossibility
Ignoring unsupported options: links
Creating network vossibility_vossibility
Creating network vossibility_default
Creating service vossibility_nsqd
Creating service vossibility_logstash
Creating service vossibility_elasticsearch
Creating service vossibility_kibana
Creating service vossibility_ghollector
Creating service vossibility_lookupd
複数の Compose ファイルにわたって設定を行う場合、たとえば基本となる設定と、それをオーバーライドする環境固有の設定がある場合には、--compose-file
を複数指定することができます。
$ docker stack deploy --compose-file docker-compose.yml -c docker-compose.prod.yml vossibility
Ignoring unsupported options: links
Creating network vossibility_vossibility
Creating network vossibility_default
Creating service vossibility_nsqd
Creating service vossibility_logstash
Creating service vossibility_elasticsearch
Creating service vossibility_kibana
Creating service vossibility_ghollector
Creating service vossibility_lookupd
サービスが正しく生成できたかどうかは、以下のようにして確認します。
$ docker service ls
ID NAME MODE REPLICAS IMAGE
29bv0vnlm903 vossibility_lookupd replicated 1/1 nsqio/nsq@sha256:eeba05599f31eba418e96e71e0984c3dc96963ceb66924dd37a47bf7ce18a662
4awt47624qwh vossibility_nsqd replicated 1/1 nsqio/nsq@sha256:eeba05599f31eba418e96e71e0984c3dc96963ceb66924dd37a47bf7ce18a662
4tjx9biia6fs vossibility_elasticsearch replicated 1/1 elasticsearch@sha256:12ac7c6af55d001f71800b83ba91a04f716e58d82e748fa6e5a7359eed2301aa
7563uuzr9eys vossibility_kibana replicated 1/1 kibana@sha256:6995a2d25709a62694a937b8a529ff36da92ebee74bafd7bf00e6caf6db2eb03
9gc5m4met4he vossibility_logstash replicated 1/1 logstash@sha256:2dc8bddd1bb4a5a34e8ebaf73749f6413c101b2edef6617f2f7713926d2141fe
axqh55ipl40h vossibility_vossibility-collector replicated 1/1 icecrime/vossibility-collector@sha256:f03f2977203ba6253988c18d04061c5ec7aab46bca9dfd89a9a1fa4500989fba
上位コマンド
コマンド | 説明 |
---|---|
docker stack | Docker Stack を管理します。 |
関連コマンド
コマンド | 説明 |
docker stack deploy | 新規 Stack のデプロイ、または既存 Stack の更新を行います。 |
docker stack ls | Stack の一覧を表示します。 |
docker stack ps | Stack 内のタスク一覧を表示します。 |
docker stack rm | Stack を削除します。 |
docker stack services | Stack 内のサービスを一覧表示します。 |