如何检查(Ubuntu)服务器上运行的每个Docker容器使用的资源量(CPU,内存等)?
答案 0 :(得分:5)
您docker stats
看到了文档
http://docs.docker.com/reference/commandline/stats/
例如你可以做
docker stats $(docker ps -q)
(将显示容器的ID或如果您想要名称,请参阅
Is there any way to display container names in docker stats?
,如果您对特定容器感兴趣,也可以docker top
答案 1 :(得分:2)
显示单个docker引擎或整个swarm集群上所有正在运行的容器的实时资源使用情况
docker stats $( docker ps --format '{{ .Names }}' )
示例输出
CONTAINER CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
dockercoins_webui_1 0.66% 19.23 MB / 16.72 GB 0.12% 309.8 kB / 605.8 kB 61.44 kB / 0 B 9
dockercoins_worker_1 4.01% 13.18 MB / 16.72 GB 0.08% 834.5 kB / 920.5 kB 98.3 kB / 0 B 1
dockercoins_rng_1 0.70% 19.03 MB / 16.72 GB 0.11% 412.8 kB / 441.7 kB 2.388 MB / 0 B 1
dockercoins_hasher_1 0.59% 19.67 MB / 16.72 GB 0.12% 477.6 kB / 372.7 kB 1.438 MB / 0 B 22
dockercoins_redis_1 0.18% 6.877 MB / 16.72 GB 0.04% 178.8 kB / 80.11 kB 5.771 MB / 0 B 3
web 0.02% 11.06 MB / 16.72 GB 0.07% 87.19 kB / 648 B 0 B / 0 B 1
db 0.01% 14.11 MB / 16.72 GB 0.08% 87.84 kB / 648 B 0 B / 9.851 MB 7
答案 2 :(得分:1)
您可以尝试使用docker-scout
(不是免费的)或cAdvisor(Apache许可证)。
似乎比:
更好cAdvisor(Container Advisor)为容器用户提供了对其运行容器的资源使用和性能特征的理解 它是一个运行守护程序,用于收集,聚合,处理和导出有关正在运行的容器的信息 具体来说,对于每个容器,它保留资源隔离参数,历史资源使用情况,完整历史资源使用情况的直方图和网络统计信息
sudo docker run \
--volume=/:/rootfs:ro \
--volume=/var/run:/var/run:rw \
--volume=/sys:/sys:ro \
--volume=/var/lib/docker/:/var/lib/docker:ro \
--publish=8080:8080 \
--detach=true \
--name=cadvisor \
google/cadvisor:latest
答案 3 :(得分:0)
我建议使用Google cAdvisor - cAdvisor监视Docker容器的资源使用情况和性能特征。它是免费的,并为您需要的每个容器提供所有资源使用统计信息。
如果要存储可视化,分析和容量规划的cAdvisor性能统计信息,可以使用ATSD。您可以可视化每个容器或每个主机的统计信息,还有多个主机和门户的统一门户,用于按角色/类型排序的自定义容器集。