基于Docker基于LXC的事实,我的理解是Docker容器共享来自其主机操作系统的各种资源。我关心的是CPU内核。这是一个场景:
a)因此,如果我在该主机上运行所有docker容器,它们是否会按需消耗CPU /内核,就像它们在该主机OS上作为正常安装的应用程序运行时一样?
b)泊坞窗容器会消耗其自己的进程吗,并且其中包含的所有进程都将停留在该父进程的CPU内核上?
c)如何指定一个docker容器使用多个核心(例如4个)。我看到有一个-C标志可以指向一个核心ID,但是似乎没有指定容器随机选择N个核心的选项。
目前,我认为docker不提供这种级别的粒度。它没有在lxc.conf文件中指定分配多少个内核,因此您可能会(可能是1个,但我不确定100%)获得每个docker的所有内核。
但是,您可以调整为给定容器生成的conf文件,并设置如下内容
cpuset { cpuset.cpus="0-3"; }