Назад | Перейти на главную страницу

Чтение показателей Docker в машиночитаемом формате

Я использую несколько контейнеров Docker для своих пользователей. Пользователи могут запускать и останавливать свои контейнеры динамически, поэтому я хотел бы посмотреть, как Доступное пространство данных показатели из docker info с какой-то системой мониторинга.

Я пытался использовать каталог API Docker с

echo -e 'GET /info HTTP/1.0\r\n' |  nc -U /var/run/docker.sock | grep '{'  | python -m json.tool

но результат возвращается в удобочитаемых единицах, т.е. «16,93 МБ» и «9 ГБ», что не подходит для машинной обработки.

То же самое происходит при использовании библиотеки Python Docker API.

import docker
client = docker.Client()
print(client.info()['DriverStatus'])

Итак, вопрос: есть ли машиночитаемая версия docker info for для анализа показателей "Общее пространство базовых данных"?

Можно использовать docker info --format '{{json .}}'.

Например:

user@host$ docker info --format '{{json .MemTotal}}'
3840544768