加入收藏 | 设为首页 | 会员中心 | 我要投稿 成都站长网 (https://www.028zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

docker如何使用其主机操作系统的CPU内核?

发布时间:2022-12-21 14:08:54 所属栏目:PHP教程 来源:转载
导读: 提问者:小点点docker如何使用其主机操作系统的CPU内核?
根据Docker基于LXC这一事实,我的理解是Docker容器共享来自其主机操作系统的各种资源。我关心的是CPU核心。下面是一个场景:
a)

提问者:小点点docker如何使用其主机操作系统的CPU内核?

根据Docker基于LXC这一事实,我的理解是Docker容器共享来自其主机操作系统的各种资源。我关心的是CPU核心。下面是一个场景:

a) 因此,如果我在该主机上运行所有docker容器,它们是否会像在该主机操作系统上作为正常安装的应用程序运行一样,根据需要消耗CPU/内核?

b) docker容器是否会使用自己的进程,并且其中包含的所有处理都将被固定到父进程的CPU核心上?

c) 如何指定docker容器以使用多个核心(例如4个)。我看到有一个-C标志可以指向一个核心id,但似乎没有选项指定容器来随机选取N个核心。

共3个答案

匿名用户

目前,我不认为docker提供这种粒度级别。它没有指定它在lxc.conf文件中分配了多少内核,所以你可能会得到每个docker的所有内核(或者可能是1个,我不是100%确定)。

但是,您可以调整为给定容器生成的conf文件,并设置如下内容

cpuset {

    cpuset.cpus="0-3";
}

匿名用户

可能是在最新(少数)版本中发生了变化。现在php内核,您可以使用docker run的参数约束docker容器:新docker版本中当前答案的等价物是docker run ubuntu/bin/echo“Hello world--cpuset cpus=”0-3“,但是,这会将docker进程限制在这些CPU上,但是(如果我错了,请纠正我)其他容器也可以要求相同的设置。可能更好的方法是使用CPU共享。

有关更多信息,请参阅

匿名用户

从ORACLE留档:

  To control a container's CPU usage, you can use the
  --cpu-period  and --cpu-quota options with the docker 

  create and docker run commands  from version 1.7.0 of Docker onward.
  The --cpu-quota option specifies the number of microseconds 
  that a container has access to CPU resources during a 
  period specified by --cpu-period.
  As the default value of --cpu-period is 100000, setting the 
  value of --cpu-quota to 25000 limits a container to 25% of 
  the CPU resources. By default, a container can use all available CPU resources, 
  which corresponds to a --cpu-quota value of -1.

(编辑:成都站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!