执行service命令的——limit-xxx选项,限制每个服务或每个容器的资源



docker 1.12的service create命令有以下两个选项来限制cpu和内存:

  --limit-cpu value              Limit CPUs (default 0.000)
  --limit-memory value           Limit Memory (default 0 B)

是否限制每个服务或每个容器的资源?

可以在api/client/service/update.go中看到

taskResources().Limits = &swarm.Resources{}
updateInt64Value(flagLimitCPU, &task.Resources.Limits.NanoCPUs)

--limit-cpu在commit 12a00e6中被引入

考虑到swarmkit/manager/scheduler/nodeinfo。在删除任务时,Go有以下代码:

nodeInfo.AvailableResources.NanoCPUs += reservations.NanoCPUs
limit-cpu是由一个服务管理的每个节点。

最新更新