我正在用python编码测试。 我想创建一个输出容器状态(正在运行/已退出(的方法。
import docker
class Container:
def __init__(self, name, image, *, command=[], links={}):
self._docker = docker.DockerClient(base_url='unix://var/run/docker.sock')
def get_status(self):
inspection = self._docker.api.inspect_container(self.id)
return inspection['State']['Status']
此方法 (get_status( 在容器运行时有效 但在容器停止时失败,并显示以下错误消息:
E docker.errors.NotFound: 404 Client Error: Not Found ("No such container: 2457e5a283e5cb4add4fdb36pb465437b21bb21f768be405fe40615e25442d6e
"docker inspect" cli 命令在实例停止时适用于实例,但我需要通过 python 执行此操作
有什么想法吗?
您使用的是旧版本的docker-py
。在下面做
pip uninstall docker-py
pip install docker
然后运行代码
import docker
client = docker.client.DockerClient()
container = client.containers.get("2457e5a283e5cb4add4fdb36pb465437b21bb21f768be405fe40615e25442d6e")
现在它应该可以工作了