我正在为我的用户运行一些 Docker 容器。用户可以动态启动和停止他们的容器,所以我想监视我的可用数据空间docker info
通过某种监控系统获取指标。
我尝试使用 Docker API 目录
echo -e 'GET /info HTTP/1.0\r\n' | nc -U /var/run/docker.sock | grep '{' | python -m json.tool
但结果以人类可读的单位返回 - 例如“16.93 MB”和“9 GB”,这不适合机器处理。
使用 Python Docker API 库时也会发生同样的情况。
import docker
client = docker.Client()
print(client.info()['DriverStatus'])
所以问题是:是否存在一个机器可读的版本docker info
来解析“基础数据空间总量”指标?
答案1
可以使用docker info --format '{{json .}}'
。
例如:
user@host$ docker info --format '{{json .MemTotal}}'
3840544768