获得 docker 机器的 CPU/Memory 百分比
Get CPU/Memory percentage of a docker machine
我想知道如何使用 docker 命令远程获取 docker 机器的 cpu 和内存百分比。
通常是 docker stats
,但包含机器的信息而不是容器的信息。
非常感谢!
使用 docker info
您可以获得 docker 机器有多少 CPU 和多少内存的信息。例如:
...
CPUs: 4
Total Memory: 1.952 GiB
...
使用 docker stats -a
您可以查看所有容器及其使用 cpu 和内存:
CONTAINER CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
43c7743b5df3 1.23% 30.6 MiB / 1.952 GiB 1.53% 9.36 kB / 1.21 kB 0 B / 6.44 MB 20
a821f9c87b2c 0.80% 88.31 MiB / 1.952 GiB 4.42% 10.9 kB / 1.21 kB 60 MB / 6.55 MB 20
但是,如果我做对了,您想要的是使用 docker 命令的所有容器资源的总和。看起来没有这样的 docker 命令,但是...
我玩了一会儿得到了这个(我不是一个真正的 shell 脚本专家,所以也许它可以写得更短):
docker stats --no-stream -a --format "{{.CPUPerc}}\t{{.MemPerc}}" | \
LC_NUMERIC="C" awk '{cpu+=substr(,1,length()-1); mem+=substr(,1,length()-1)} \
END {print "CPU",cpu,"%\tMem",mem,"%"}'
它产生这个:
CPU 1.62 % Mem 5.95 %
我想知道如何使用 docker 命令远程获取 docker 机器的 cpu 和内存百分比。
通常是 docker stats
,但包含机器的信息而不是容器的信息。
非常感谢!
使用 docker info
您可以获得 docker 机器有多少 CPU 和多少内存的信息。例如:
...
CPUs: 4
Total Memory: 1.952 GiB
...
使用 docker stats -a
您可以查看所有容器及其使用 cpu 和内存:
CONTAINER CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
43c7743b5df3 1.23% 30.6 MiB / 1.952 GiB 1.53% 9.36 kB / 1.21 kB 0 B / 6.44 MB 20
a821f9c87b2c 0.80% 88.31 MiB / 1.952 GiB 4.42% 10.9 kB / 1.21 kB 60 MB / 6.55 MB 20
但是,如果我做对了,您想要的是使用 docker 命令的所有容器资源的总和。看起来没有这样的 docker 命令,但是...
我玩了一会儿得到了这个(我不是一个真正的 shell 脚本专家,所以也许它可以写得更短):
docker stats --no-stream -a --format "{{.CPUPerc}}\t{{.MemPerc}}" | \
LC_NUMERIC="C" awk '{cpu+=substr(,1,length()-1); mem+=substr(,1,length()-1)} \
END {print "CPU",cpu,"%\tMem",mem,"%"}'
它产生这个:
CPU 1.62 % Mem 5.95 %