无法使用下划线过滤Docker服务名称

时间:2019-05-27 12:01:14

标签: docker

我只想显示与某个名称匹配的Docker服务。如我在文档中所读,我可以使用--filter选项。但是,该命令的结果为空。

root@vm-001:~# docker service ls | grep mariadb
dou04akhbm85  develop_mariadb_demo  replicated  1/1  myimage  *:30061->3306/tcp

root@vm-001:~# docker service ls --filter name=mariadb
ID                  NAME                MODE                REPLICAS            IMAGE               PORTS

当我运行docker service ls --filter name=develop_mariadb时,结果是正确的。

1 个答案:

答案 0 :(得分:0)

当服务以相同值开头时,名称的过滤器语法匹配。因此,您可以运行以下任何一项:

docker service ls --filter name=develop_mariadb
docker service ls --filter name=develop_maria
docker service ls --filter name=develop_
docker service ls --filter name=develop
docker service ls --filter name=dev

但是,name=mariadb将不起作用,因为服务名称不是以该字符串开头的。

在以下问题中,您可以了解更多信息:https://github.com/moby/moby/issues/37054