Memory usage of Docker containers
I am using Docker to run some containerized apps. I am interested in measuring how much resources they consume (as far as regarding CPU and Memory usage).
Is there any way to measure the resources consumed by Docker containers like RAM & CPU usage?
3 Solutions collect form web for “Memory usage of Docker containers”
Update: See @Adrian Mouat’s answer below as docker now supports
There isn’t a way to do this that’s built into docker in the current version. Future versions will support this via an api or plugin.
It does look like there’s an lxc project that you should be able to use to track CPU and Memory.
You can get this from
docker stats e.g:
$ 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
Also, you can read resource metrics directly from cgroups.
See example below (I am running on
Debian Jessie and
> 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