我一直试图使用docker命令获取docker实例的容器id,但是当我尝试使用name筛选器时,它为我提供了精细的。
sudo -S docker ps -q --filter="name=romantic_rosalind"结果容器标识: 3c7e865f1dfb
但是,当我使用图像进行筛选时,我得到了所有实例容器i:
sudo -S docker ps -q --filter="image=docker-mariadb:1.0.1"结果容器ids: 5570dc09b581 3c7e865f1dfb
但我只想得到mariadb的集装箱id。
如何利用过滤器作为图像获取码头过程的集装箱标识?
发布于 2015-04-02 07:38:57
可以使用awk和grep筛选指定的容器id。例如:
docker ps | grep "docker-mariadb:1.0.1" | awk '{ print $1 }'这将打印您的容器的标识。
发布于 2015-11-06 18:28:52
使用“祖先”,而不是“图像”,这是伟大的。示例:
sudo -S docker ps -q --filter ancestor=docker-mariadb:1.0.1Docker团队可能在最后一个版本中添加了它:http://docs.docker.com/engine/reference/commandline/ps/
发布于 2017-11-17 09:43:57
docker ps -a | awk '{ print $1,$2 }' | grep imagename | awk '{print $1 }'这太完美了。如果需要,可以单独添加一个运行中的stsatus图像的筛选器,如下所示
docker ps -a --filter=running | awk '{ print $1,$2 }' | grep rulsoftreg:5000/mypayroll/cisprocessing-printdocsnotifyconsumer:latest | awk '{print $1 }'这里可以探讨各种其他筛选器选项。
https://docs.docker.com/v1.11/engine/reference/commandline/ps/
https://stackoverflow.com/questions/29406871
复制相似问题