是否可以获取所有正在运行的容器id';docker swarm服务中的s?

是否可以获取所有正在运行的容器id';docker swarm服务中的s?,docker,docker-swarm,docker-swarm-mode,Docker,Docker Swarm,Docker Swarm Mode,我是docker swarm模式的新手,如果我想了解更多关于我的swarm服务的详细信息,我可以从命令行运行docker服务ps“service name”,或者从docker rest“/v2/services/my ngx” [msreddy@swarmnode1~]$docker服务ps my ngx ID名称映像节点所需状态当前状态错误端口 voj7fllhnmqb我的ngx.1 nginx:26分钟前运行的最新swarmnode1 但它没有给我集装箱id。我想从我的swarm服务中

我是docker swarm模式的新手,如果我想了解更多关于我的swarm服务的详细信息,我可以从命令行运行docker服务ps“service name”,或者从docker rest“/v2/services/my ngx”


[msreddy@swarmnode1~]$docker服务ps my ngx
ID名称映像节点所需状态当前状态错误端口
voj7fllhnmqb我的ngx.1 nginx:26分钟前运行的最新swarmnode1


但它没有给我集装箱id。我想从我的swarm服务中跟踪集装箱。这可能吗

docker service ps my ngx返回的Id是

要获取容器id,您可以使用
docker inspect-f“{{.Status.ContainerStatus.ContainerID}”
prranay的解决方案可以完美地工作。将其与所问问题(bash)放在一起:


这列出了所述服务的所有容器
my ngx

似乎与较新的API相比,ContainerID在Mac上不可用,
版本17.09.1-ce-mac42
仍然支持此命令。答案中命令的容器id输出长度为64个字符。但是
docker ps
输出12个字符长的ID。64个字符长的ID与12个字符的ID是如何对应的?+1对您的答案投赞成票非常感谢@prranay的回答,感谢您的伟大命令。为了回答我自己的问题,我们在普通
docker ps
命令输出的容器ID中看到的12个字符的ID是64个字符ID的前12个字符。因此它有点类似于git commit哈希,它做一些类似的事情(如果有人想进行技术类比的话)。我也在这里写了一个相关的问题和答案,这归功于你的命令:(再次感谢)非常有用,谢谢
for f in $(docker service ps -q my-ngx -f desired-state=running);do docker inspect --format '{{.Status.ContainerStatus.ContainerID}}' $f; done