docker service scale
命令用于使您能够将一个或多个复制服务向上或向下缩放到所需数量的副本。 此命令不能应用于全局模式的服务。 该命令将立即返回,但服务的实际缩放可能需要一些时间。 要停止服务的所有副本,同时保持服务在群集中的活动,您可以将比例设置为0
。
用法
docker service scale SERVICE=REPLICAS [SERVICE=REPLICAS...]
相关命令
命令 | 描述 |
---|---|
docker service create | |
docker service inspect | |
docker service logs | 获取服务的日志 |
docker service ls | 列出服务 |
docker service rm | 删除一个或多个服务 |
docker service scale | 缩放一个或多个复制服务 |
docker service update | 更新服务 |
实例
缩放单个服务
以下命令将“前端”服务缩放为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 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
命令允许一次设置多个服务所需的任务数量。以下示例缩放了后端和前端服务:
$ 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