如何为Docker容器分配更多资源

3
我正在使用Docker创建本地开发环境,以开发Magento模块。在大多数操作期间,Magento非常缓慢,我注意到的是,每个核心的CPU使用率不会超过20%(我的机器有8个核心)。
有没有设置可以更改,以便给Docker容器提供更多的CPU资源使用?

你确定你的容器需要更多的 CPU 吗?使用 docker stats 命令来检查。 - user2915097
每一列都是0,这很奇怪。这与我使用docker-composer有关吗? - Luigi T.
我投票关闭此问题,因为Stack Overflow是一个与编程相关的问答网站。你的问题与编程无关。也许你应该在http://magento.stackexchange.com上发布它? - Enigmativity
1
@Enigmativity,这个话题是关于Docker的,Magento只是被提到的案例。答案都是关于Docker的,而不是Magento。Docker用于编程,所以我想它适合放在与其他带有Docker标签的问题相同的部分。 - Luigi T.
1
@Enigmativity 这个问题不是关于编程语言或代码逻辑的,而是关于编程中使用的工具。我在这个部分写它是因为没有 Docker 部分,而这个部分是关于编程最通用的部分。有了这个想法,这个部分还有其他几个关于 Docker 的问题,并且它们没有关闭。所以我想在这里写应该没问题。 - Luigi T.
显示剩余2条评论
2个回答

3

使用 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 run参考文档 -> https://docs.docker.com/engine/reference/run/

谢谢您的提示!也许目前我遇到了另一个问题……docker stats显示容器,但所有值(CPU、MEM等)都为0。 - Luigi T.

2
你有其他容器在运行吗?文档中说明如下:
默认情况下,所有容器都获得相同比例的 CPU 周期。可以通过将容器的 CPU 共享权重相对于所有其他正在运行的容器的权重进行修改来修改此比例。
你可以在 compose 文件中修改容器的资源分配(link)。

是的,这样更有意义..我有5个容器..非常感谢! - Luigi T.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接