扩展 Swarm 中的服务
在将部署服务到 Swarm 之后,就可以使用 Docker CLI 来扩展服务中的容器数量。服务中运行的容器称为任务。
-
如果尚未操作,请打开终端并 SSH 登录到运行管理节点的机器。例如,本教程使用名为
manager1的机器。 -
运行以下命令,更改 Swarm 中运行服务的期望状态:
$ docker service scale <SERVICE-ID>=<NUMBER-OF-TASKS>例如:
$ docker service scale helloworld=5 helloworld scaled to 5 -
运行
docker service ps <SERVICE-ID>查看更新后的任务列表:$ docker service ps helloworld NAME IMAGE NODE DESIRED STATE CURRENT STATE helloworld.1.8p1vev3fq5zm0mi8g0as41w35 alpine worker2 Running Running 7 minutes helloworld.2.c7a7tcdq5s0uk3qr88mf8xco6 alpine worker1 Running Running 24 seconds helloworld.3.6crl09vdcalvtfehfh69ogfb1 alpine worker1 Running Running 24 seconds helloworld.4.auky6trawmdlcne8ad8phb0f1 alpine manager1 Running Running 24 seconds helloworld.5.ba19kca06l18zujfwxyc5lkyn alpine worker2 Running Running 24 seconds可以看到,Swarm 已创建 4 个新任务,将 Alpine Linux 的运行实例总数扩展到 5 个。这些任务分布在 Swarm 的三个节点上。其中一个在
manager1上运行。 -
运行
docker ps查看当前连接节点上运行的容器。以下示例显示了在manager1上运行的任务:$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 528d68040f95 alpine:latest "ping docker.com" About a minute ago Up About a minute helloworld.4.auky6trawmdlcne8ad8phb0f1如果想查看其他节点上运行的容器,请 SSH 登录到这些节点并运行
docker ps命令。
下一步
在本教程的这一点上,您已完成 helloworld 服务的操作。接下来,您将删除该服务。