列出 docker swarm 模式所有节点的容器

saa*_*lin 16 docker docker-swarm

我们在几个节点上以 swarm 模式运行 docker。

找不到一种快速简便的方法来从管理器节点列出 swarm 中的所有容器(最好带有状态)。人们可以看到覆盖网络和连接到这些网络的本地运行的容器,还有服务——但不能看到容器的详细信息等。

它是否已经可用,或者使用 REST API 是唯一可用的选项?(但不确定那里是否提供了所有必需的信息)

小智 24

您可以docker node ls查看集群中的所有节点,然后docker node ps <node>查看该节点上的容器。

作为单班轮,您可以:

docker node ps $(docker node ls -q)

  • 我发现这个命令非常有用:`docker node ps $(docker node ls -q) --filter desired-state=Running | uniq` - 这将进行过滤(所需状态)并删除可能不需要的信息(uniq)。 (6认同)
  • 这实际上是列出正在运行的服务,而不是所有容器。 (4认同)