Docker 资源限制
限制容器对内存的使用
下载progrium/stress镜像 作为压力测试
[root@localhost ~]# docker pull progrium/stress
6docker run --help
-m, --memory bytes 内存限制
--memory-reservation bytes 内存的软限制
--memory-swap bytes 内存+交换分区
--memory-swappiness int 优化容器内存交换
进行压力测试
docker run -m 200M --memory-swap=300M progrium/stress --vm 1 --vm-bytes 290M
--vm 1:启动一个内存工作线程
--vm-bytes 280M:每个线程分配280内存
因为280M在可分配的范围(300M)内,所以可以正常工作
一直循环分配,释放280M内存
docker run -it -m 200M --memory-swap=300M progrium/stress --vm 1 --vm-bytes 310M
分配的内存超过限额,stress线程报错,容器退出
注:如果在容器启动时只指定 -m 而不指定–memory-swap
那么默认是-m的二倍,容器可以使用无限制物理内存和swap