docker可以通过启动命令来限制容器可以使用的最大物理内存和swap,但是通常在使用这些命令的时候经常会碰到“WARNING: No swap limit support”警告
大概意思就是不支持swap内存的限制,所以在使用,在国内的腾讯云和阿里云服务器上测试都是报这个警告的。
限制docker容器最大内存使用量
-m 64M --memory-swap=128M #-m 64M 限制了容器运行可以使用的最大物理内存为64M, #--memory-swap=128M限制容器可以使用的最大虚拟内存为128M, #在出现WARNING: No swap limit support警告时这两个参数是无效的。
解决方法
#编辑/etc/default/grub文件 vim /etc/default/grub
#找到GRUB_CMDLINE_LINUX=配置项,并追加 cgroup_enable=memory swapaccount=1 注意 如果GRUB_CMDLINE_LINUX=内有内容,切记不可删除,只需在后面追加cgroup_enable=memory swapaccount=1并用空格和前面的内容分隔开。
#配置如下 GRUB_CMDLINE_LINUX="net.ifnames=0 console=tty0 console=ttyS0,115200n8 cgroup_enable=memory swapaccount=1" #保存,升级grub sudo update-grub #重启服务 reboot