Docker 17
引擎: CLI | Engine: CLI

docker service scale

docker service scale

描述

缩放一个或多个复制服务

使用

docker service scale SERVICE=REPLICAS [SERVICE=REPLICAS...]

父命令

命令描述
docker service 管理服务

相关命令

命令描述
docker service create创建一项新服务
docker service inspect显示一项或多项服务的详细信息
docker service logs获取服务或任务的日志
docker service ls列出服务
docker service ps列出一项或多项服务的任务
docker service rm删除一项或多项服务
docker service scale扩展一个或多个复制服务
docker service update更新服务

扩展描述

Scale 命令允许您将一个或多个复制服务向上或向下扩展到所需的副本数量。此命令不能应用于全局模式的服务。命令将立即返回,但服务的实际扩展可能需要一些时间。若要在保持服务处于活动状态的同时停止服务的所有副本,可以将标度设置为0。

实例

扩展单个服务

下面的命令将“前端”服务扩展到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