05-Docker-Container资源限制

目录

  • 05-Docker-Container资源限制
    • 参考
    • 可压缩性
    • MEM限制
      • 选项说明
      • 压测示例
    • CPU限制
      • 选项说明
      • 压测示例

05-Docker-Container资源限制

Docker Version: 19.03.5

Written by Zak Zhu

参考

  • Breeze老师的docker培训
  • 马哥docker视频

可压缩性

  • MEM是不可压缩资源
  • CPU是可压缩的资源

MEM限制

选项说明

OPTION                                                COMMENT
--memory bytes 限制容器使用的内存大小
--memory-swappiness int 控制内存与swap置换的比例, 强烈建议关闭swap, 即不启用--memory-swap选项, 并且设置--memory-swappiness 0

压测示例

docker container run \
    --memory 200M --memory-swappiness 0 \
    --interactive --tty --rm \
    progrium/stress --vm 1 --vm-bytes 180M

上面的示例中,--vm-bytes为180M,容器工作正常;如果将其修改为230M,则容器OOM退出


CPU限制

选项说明

OPTION                                                 COMMENT
--cpu-shares int --cpu-shares选项可以设置容器使用宿主机CPU资源的权重
--cpu-shares选项只有当容器CPU紧张时生效, CPU紧张的容器按它们的权重比例分配宿主机CPU资源, 并且充分利用宿主机CPU资源, 不计算CPU空闲的容器权重

当只有一个容器CPU紧张时, 该容器可以分配到宿主机全部CPU资源
--cpus decimal --cpus选项可以限制容器使用宿主机的最多CPU核数
--cpuset-cpus string --cpuset-cpus选项可以限制容器使用宿主机的哪个或哪几个CPU核

压测示例

参考: Docker容器CPU限制选项测试

你可能感兴趣的:(05-Docker-Container资源限制)