使用docker-py获取运行docker容器的列表

时间:2014-08-06 09:46:06

标签: docker dockerpy

我正在使用docker-py管理其中一个应用的docker容器。我想检索所有正在运行的容器的列表,与docker ps相同。但containers方法只返回一个空列表。

>>> import docker
>>> c = docker.Client()
>>> container = c.create_container(image='base', command='/bin/bash', stdin_open=True, tty=True, name='docker-test')
>>> container
{u'Id': u'1998f08a031d8632400264af667d93162465a04348b61144a4c730c7c4462875', u'Warnings': None}
>>> c.start(container)
>>> c.containers(quiet=False, all=True, trunc=True, latest=False, since=None, before=None, limit=-1)
[]

但是,当然,做$ docker ps给了我这个:

CONTAINER ID        IMAGE                   COMMAND             CREATED             STATUS              PORTS               NAMES
1998f08a031d        base:latest             /bin/bash           3 minutes ago       Up 3 minutes                            docker-test

我错过了什么?

1 个答案:

答案 0 :(得分:3)

好吧,我弄清楚出了什么问题。客户端和服务器没有相同的版本。当我使用正确的版本号重新初始化docker.Client时,它会返回所有正在运行的容器的列表。