docker service scale
說明 | 調整一個或多個複製服務的規模 |
---|---|
用法 | docker service scale SERVICE=REPLICAS [SERVICE=REPLICAS...] |
Swarm 此指令適用於 Swarm 編排器。
說明
使用 scale 指令,您可以將一個或多個複製服務向上或向下調整到所需的複本數量。此指令無法套用於全域模式的服務。指令將立即返回,但實際調整服務規模可能需要一些時間。若要停止服務的所有複本,同時保持服務在 swarm 中處於活動狀態,您可以將規模設定為 0。
注意事項
這是一個叢集管理指令,必須在 swarm 管理節點上執行。若要瞭解管理節點和工作節點,請參閱文件中Swarm 模式章節。
選項
選項 | 預設值 | 說明 |
---|---|---|
-d, --detach | API 1.29+ 立即退出,而不是等待服務收斂 |
範例
調整單一服務的規模
以下指令將「frontend」服務調整為 50 個工作。
$ docker service scale frontend=50
frontend scaled to 50
以下指令嘗試將全域服務調整為 10 個工作,並返回錯誤。
$ docker service create --mode global --name backend backend:latest
b4g08uwuairexjub6ome6usqh
$ docker service scale backend=10
backend: scale can only be used with replicated or replicated-job mode
之後,立即執行 docker service ls
以查看實際的複本數量。
$ docker service ls --filter name=frontend
ID NAME MODE REPLICAS IMAGE
3pr5mlvu3fh9 frontend replicated 15/50 nginx:alpine
您也可以使用 docker service update
指令調整服務規模。以下指令效果相同
$ docker service scale frontend=50
$ docker service update --replicas=50 frontend
調整多個服務的規模
docker service scale
指令允許您一次設定多個服務的所需工作數量。以下範例同時調整 backend 和 frontend 服務的規模
$ docker service scale backend=3 frontend=5
backend scaled to 3
frontend scaled to 5
$ docker service ls
ID NAME MODE REPLICAS IMAGE
3pr5mlvu3fh9 frontend replicated 5/5 nginx:alpine
74nzcxxjv6fq backend replicated 3/3 redis:3.0.6