我正在使用os.cpus()来监视容器实例中的node.js应用程序,但是想知道用法是指示实例的CPU还是docker主机?
对于docker容器,容器内部或外部的CPU / mem与虚拟机之间没有区别。基本上,所有容器共享相同的内核,并且没有CPU或内存的命名空间,导致容器以不同方式查看它们。因此,os.cpus()
显示主机系统的使用信息,包括所有工作负载。要查看容器的使用信息,可以在主机系统上使用docker stats
命令。对于Node.js,请查看systeminformation包,它还提供docker容器的使用信息。但是,这仅在主机(不在容器内)上运行时才可用!
另见:https://docs.docker.com/engine/reference/commandline/stats/