Docker调度策略澄清

时间:2018-01-01 22:08:29

标签: docker-swarm

我是docker的新手,正在试图在传播策略的群上运行多个容器。 Swarm有3个节点&每个节点已经有2个容器,我运行了3个docker run命令,以便每个节点再获得1个容器。

因为我在没有使用-m指定内存的情况下运行docker容器,而且还没有在docker run命令中指定CPU。这样做之后我运行了“docker info”,但我发现保留的内存是0。 enter image description here

我通过指定-m重新运行容器,这次我发现保留内存不是0。

问题:在不使用-m命令的情况下运行容器时,为什么保留内存显示为0,尽管正在运行的容器(没有-m生成)仍将使用内存...例如,如果单个节点上已有10个容器已经运行(即主机内存已满),并且我尝试通过给出-m 1G在同一主机上启动容器,则可能没有空间来保留,因此它会失败?

1 个答案:

答案 0 :(得分:0)

你是对的。如果未使用-m指定保留内存,则仍使用内存。

您看到0,因为这是未指定保留内存时的默认值。该数字不是节点上实际的内存消耗。所以0有意义,作为设置而不是实时报告。

这在docker swarm项目中的问题#1819上进行了讨论。