05-Docker-Container资源限制
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核 |