当前版本的Docker包含了Swarm模式,用于本地管理称为Swarm的Docker引擎集群。通过Docker CLI,可以创建集群、将应用程序服务部署到集群中并管理集群的行为。
当你已在集群中部署了一个服务后,可以使用Docker CLI查看有关正在运行的服务的详细信息。
1. 如果尚未打开终端,请SSH到运行管理器节点的计算机。例如,本教程使用的计算机名为Manager1。
2. 运行 docker service inspect --pretty 以易于阅读的格式显示服务的详细信息。
要查看有关helloworld服务的详细信息,请执行以下操作:

提示:要以JSON格式返回服务详细信息,请运行不带--pretty标志的相同命令。

运行 docker service ps 以查看正在运行该服务的节点:
[Manager1]$ docker service ps helloworld
NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS
helloworld.1.8p1vev3fq5zM0Mi8g0as41w35 alpine worker2 Running Running 3 Minutes
在这种情况下,helloworld服务的一个实例正在worker2节点上运行。你可能会看到该服务也在你的管理器节点上运行。默认情况下,集群中的管理器节点能够像工作节点一样执行任务。
Swarm还显示了服务任务的DESIRED STATE和CURRENT STATE,以便你可以查看任务是否按照服务定义运行。
4. 运行 docker ps 在任务运行的节点上查看有关该任务的容器细节。
提示:如果helloworld在管理节点以外的其他节点上运行,则必须SSH到该节点。
[worker2]$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e609dde94e47 alpine:latest “PING docker.com” 3 Minutes ago Up 3 Minutes
