docker stack deploy(部署堆疊)

說明部署新的堆疊或更新現有的堆疊
用法docker stack deploy [選項] 堆疊
別名
docker stack up

Swarm 此指令適用於 Swarm Orchestrator。

說明

從 Swarm 上的 compose 檔案建立和更新堆疊。

注意事項

這是一個叢集管理指令,必須在 Swarm 管理節點上執行。若要瞭解管理節點和工作節點,請參閱文件中Swarm 模式章節。

選項

選項預設值說明
-c, --compose-fileAPI 1.25+ Compose 檔案的路徑,或使用 - 從標準輸入讀取
-d, --detachtrue立即退出,而不是等待堆疊服務收斂
--pruneAPI 1.27+ 清理不再被參考的服務
-q, --quiet隱藏進度輸出
--resolve-imagealwaysAPI 1.30+ 查詢登錄檔以解析映像檔摘要和支援的平台(alwayschangednever
--with-registry-auth將登錄檔驗證詳細資訊傳送至 Swarm 代理程式

範例

Compose 檔案 (--compose-file)

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