从docker容器实例中的node.js os.cpus()检索到的CPU使用率是否表示主机CPU或容器CPU?

时间:2019-04-11 18:13:45

标签: node.js docker cpu-usage

我正在使用os.cpus()来监视容器实例中的node.js应用,但是想知道用法是否指示实例或Docker主机的CPU?

1 个答案:

答案 0 :(得分:0)

对于Docker容器,容器内部或外部的CPU /内存之间没有硬性区别,就像存在虚拟机一样。基本上,所有容器都共享相同的内核,并且没有用于CPU或内存的命名空间,导致容器对它们的查看方式不同。因此,os.cpus()显示了包括所有工作负载的主机系统的使用信息。要查看容器的使用信息,可以在主机系统上使用docker stats命令。对于Node.js,签出systeminformation软件包,该软件包还提供了docker容器的使用信息。但是,只有在主机(而不是在容器内部)上运行时,此功能才可用!

另请参阅:https://docs.docker.com/engine/reference/commandline/stats/