如何设置Docker容器运行时的资源限制?

2026-05-05 19:220阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计706个文字,预计阅读时间需要3分钟。

如何设置Docker容器运行时的资源限制?

概述:一个Docker宿主机上运行的容器需要CPU、内存和IO资源。对于KVM、VMware等虚拟化技术,用户可以控制分配多少CPU、内存资源给每个虚拟机。对于容器,Docker提供了资源限制和分配的机制。

概述

​ 一个 docker host 上会运行若干容器,每个容器都需要 CPU内存IO 资源。对于 KVM,VMware 等虚拟化技术,用户可以控制分配多少 CPU、内存资源给每个虚拟机。对于容器,Docker 也提供了类似的机制避免某个容器因占用太多资源而影响其他容器乃至整个 host 的性能。

内存限额

​ 与操作系统类似,容器可使用的内存包括两部分:物理内存和swap

docker run -m 或 --memory设置内存的使用限额。docker run --memory-swap 设置内存和swap的使用限额。例如当运行命令:docker run -m 100M --memory-swap 200M,该命令表明容器允许使用的最大内存为100M,允许使用的swap最大为100M。默认情况下,上面两组参数为 -1,即对容器内存和 swap 的使用没有限制。

CPU权重

​ 默认设置下,所有容器可以平等地使用 host CPU 资源并且没有限制。Docker 可以通过 -c--cpu-shares 设置容器使用 CPU 的权重。如果不指定,默认值为 1024。

阅读全文

本文共计706个文字,预计阅读时间需要3分钟。

如何设置Docker容器运行时的资源限制?

概述:一个Docker宿主机上运行的容器需要CPU、内存和IO资源。对于KVM、VMware等虚拟化技术,用户可以控制分配多少CPU、内存资源给每个虚拟机。对于容器,Docker提供了资源限制和分配的机制。

概述

​ 一个 docker host 上会运行若干容器,每个容器都需要 CPU内存IO 资源。对于 KVM,VMware 等虚拟化技术,用户可以控制分配多少 CPU、内存资源给每个虚拟机。对于容器,Docker 也提供了类似的机制避免某个容器因占用太多资源而影响其他容器乃至整个 host 的性能。

内存限额

​ 与操作系统类似,容器可使用的内存包括两部分:物理内存和swap

docker run -m 或 --memory设置内存的使用限额。docker run --memory-swap 设置内存和swap的使用限额。例如当运行命令:docker run -m 100M --memory-swap 200M,该命令表明容器允许使用的最大内存为100M,允许使用的swap最大为100M。默认情况下,上面两组参数为 -1,即对容器内存和 swap 的使用没有限制。

CPU权重

​ 默认设置下,所有容器可以平等地使用 host CPU 资源并且没有限制。Docker 可以通过 -c--cpu-shares 设置容器使用 CPU 的权重。如果不指定,默认值为 1024。

阅读全文