我正在使用docker-py并尝试获取docker统计数据。但我无法获得任何返回特定容器的统计信息的API。是否有REST API或以编程方式获取统计信息的任何其他方式?
>>> cli = docker.Client(base_url="tcp://xxxxx:2375", version='1.21')
>>> cli.containers() >> gives the right o/p
>>> cli.containers.get()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'function' object has no attribute 'get'
>>> docker.version
'1.10.6'
答案 0 :(得分:4)
您可能正在寻找Container.stats
。
答案 1 :(得分:1)
获取特定容器名称示例的统计信息:“monitoring-tinydb”。 注意:使用您想要的容器 ID 或名称更改此容器名称。
import docker
client = docker.from_env()
container = client.containers.get("monitoring-tinydb")
status = container.stats(decode=None, stream = False)
print(status)
获取在 docker 主机中运行的所有容器的统计信息
import docker
client = docker.DockerClient(base_url='unix:///var/run/docker.sock')
for containers in client.containers.list():
print(containers.stats(decode=None, stream = False))