Docker容器内存限制的方法

时间:2021-05-19

1.使用Docker自带的-m操作进行内存限制时可能会由于内核限制所以出现以下提示

Your kernel does not support swap limit capabilities.memory limit without swap

必须通过修改grub文件/etc/default/grub 添加:

GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1"

之后更新grub并重启可以解决

$ sudo update-grub$ sudo reboot

2.使用docker -m操作会使内存被限制为输入大小的两倍

$ sudo docker run -it --name test -m 100m ubuntu /bin/bash

此时内存被限制为200m

若想要限制为100m必须执行

$ sudo docker run -it --name test -m 100m --memory-swap=100m ubuntu /bin/bash

此时内存与swap都被限制为100m

3.内存压测工具stress

$ sudo apt-get install stress$ sudo stress --vm 1 --vm-bytes 100M --vm-hang 0

若运行后现实在几秒内被杀死说明内存被限制为100M

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章