【问题标题】:How to Give Docker Containers more resources如何为 Docker 容器提供更多资源
【发布时间】:2016-06-03 10:53:44
【问题描述】:

我正在使用 docker 创建本地开发环境来开发 Magento 模块。 Magento 在大多数操作中都很慢,我注意到每个核心的 CPU 使用率不会超过 20%(我的机器有 8 个核心)。

我可以更改任何设置以在 CPU 使用率方面为 docker 容器提供更多资源吗?

【问题讨论】:

  • 您确定您的容器需要更多 CPU 吗?检查docker stats
  • 奇怪的是每列都是 0.. 有什么与我使用 docker-composer 的事实有关吗?
  • 我投票结束这个问题,因为 Stack Overflow 是一个 programming-related 问答网站。您的问题与编程无关。也许你应该把它发到magento.stackexchange.com 上?
  • @Enigmativity,主题是 Docker,Magento 是报告的案例。答案是关于 Docker,而不是 Magento。 Docker 用于编程,所以我想这部分与所有其他带有 Docker 标签的问题一样。
  • @Enigmativity 问题不在于程序语言或一段代码的逻辑,而在于也用于编程的工具。我之所以写在这一部分是因为没有 Docker 部分,而这一部分是关于编程的最通用的部分。考虑到这一点,本节还有几个关于 Docker 的问题,并没有关闭。。所以我想这里写下来也可以。

标签: linux magento docker docker-compose


【解决方案1】:

您可以在使用docker run时传递有关资源的自定义参数。

喜欢:

--cpu-shares        CPU shares (relative weight)
--cpu-period        Limit CPU CFS (Completely Fair Scheduler) period
--cpu-quota         Limit CPU CFS (Completely Fair Scheduler) quota
--cpuset-cpus       CPUs in which to allow execution (0-3, 0,1)
--cpuset-mems       MEMs in which to allow execution (0-3, 0,1)

我用的是Docker的1.11.1版本,不记得了,不过可能有些参数只能在较新的版本中使用。

查看 docker 运行参考 -> https://docs.docker.com/engine/reference/run/

【讨论】:

  • 感谢您的提示!也许此刻我遇到了另一个问题。docker stats 正在报告容器,但所有值(CPU、MEM...)都是 0。
【解决方案2】:

您是否有任何其他容器正在运行?文档指出:

默认情况下,所有容器都获得相同比例的 CPU 周期。可以通过更改容器相对于所有其他正在运行的容器的权重的 CPU 份额权重来修改此比例。

您可以在撰写文件 (link) 中修改容器的资源分配

【讨论】:

  • 是的,这更有意义.. 我有 5 个容器.. 非常感谢!
猜你喜欢
  • 1970-01-01
  • 2020-01-01
  • 2015-01-06
  • 1970-01-01
  • 2016-02-18
  • 2021-03-29
  • 2021-07-02
  • 2017-01-22
  • 2019-11-10
相关资源
最近更新 更多