2013-09-23 31 views
19

Ich verwende Docker, um einige Container-Apps auszuführen. Ich bin daran interessiert zu messen, wie viel Ressourcen sie verbrauchen (was die CPU- und Speicherauslastung betrifft).Speicherauslastung von Docker-Containern

Gibt es eine Möglichkeit, die Ressourcen von Docker-Containern wie RAM & CPU-Auslastung zu messen messen?

Vielen Dank.

+0

für Zeile in 'Docker ps | awk '{print $ 1}' | grep -v CONTAINER'; do docker ps | grep $ line | awk '{printf $ NF ""}' && echo $ (('cat/sys/fs/cgroup/speicher/docker/$ line */memory.usage_in_bytes'/1024/1024)) MB; done – staticx

Antwort

7

Update: Siehe @Adrian Mouat die Antwort unten als Docker unterstützt jetzt docker stats!

Es gibt keine Möglichkeit, dies zu tun, die in Docker in der aktuellen Version integriert ist. Zukünftige Versionen werden dies über ein API oder Plugin unterstützen.

Es sieht wie ein lxc Projekt gibt es, dass Sie sollten CPU und Speicher zu verwenden, der Lage sein, zu verfolgen.

+1

Sie können dies jetzt mit 'docker stats' tun. Ich habe eine Antwort hinzugefügt, aber Sie können diese auch aktualisieren, wie es akzeptiert wird. –

3

Außerdem können Sie Ressourcenmetriken direkt von cgroups lesen. Siehe Beispiel unten (Ich arbeite auf Debian Jessie und 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 
+0

Ich bin ein paar Jahre später auf Ubuntu, und ich habe keinen Unterordner namens 'system.slice' - hat es seinen Namen geändert? Es gibt jetzt einen 'docker'-Unterordner auf dieser Ebene ... – halfer

14

du von docker stats erhalten können z:

$ 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