Использование памяти контейнеров Docker

Я использую Docker для запуска некоторых контейнерных приложений. Мне интересно измерить, сколько ресурсов они потребляют (Что касается использования процессора и памяти).

есть ли способ измерить ресурсы, потребляемые контейнерами Docker, такими как RAM & CPU?

спасибо.

3 ответов


Update: см. ответ @Adrian Mouat ниже, поскольку docker теперь поддерживает docker stats!

нет способа сделать это, который встроен в docker в текущей версии. Будущие версии будут поддерживать это через API или плагин.

похоже, что есть проект lxc, который вы должны использовать для отслеживания CPU и Память.


вы можете получить это от docker stats Эл.г:

$ docker stats --no-stream
CONTAINER           CPU %               MEM USAGE / LIMIT   MEM %               NET I/O             BLOCK I/O             PIDS
6b5c0fcfa7d4        0.13%               2.203 MiB / 4 MiB   55.08%              5.223 kB / 648 B    102.4 kB / 876.5 kB   3

кроме того, вы можете читать показатели ресурсов непосредственно из групп. См. пример ниже (я работаю на Debian Jessie и docker 1.2)

> docker ps -q
afa03c363af5
> ls /sys/fs/cgroup/memory/system.slice/ | grep docker-afa03c363af5
docker-afa03c363af54815d721d938e01fe4cb2debc4f6c15ebff1851e20f6cde3ae0e.scope
> cd docker-afa03c363af54815d721d938e01fe4cb2debc4f6c15ebff1851e20f6cde3ae0e.scope
> cat memory.usage_in_bytes
4358144
> cat memory.limit_in_bytes
1073741824