当前位置: 首页 > news >正文

说一下解除docker限制内存警告

有时候docker要对容器使用的内存做出限制,通常的做法是使用参数 -m
例如:

docker run -m 512M

表示容器内存最大不能超过512M。
但这样做,在ubuntu会看到以下警告

WARNING: Your kernel does not support swap limit capabilities

docker官方文档给出了解决方案
在这里插入图片描述
就是修改grub配置,添加GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1" 就可以了。
重点的地方不是这里,是说一下grub的3个配置路径,因为我在修改grub配置的时候就搞混了,在这里给大家分享一下。

grub的配置就是修改linux内核的启动参数,和grub相关的路径有3个:

  1. /boot/grub这里有个重要文件, grub.cfg,linux内核启动的时候就会加载这个文件里面的参数,可以直接修改grub.cfg,但不建议
    在这里插入图片描述

  2. /etc/default/grub.d,这个文件夹是自定义的grub配置参数,例如上面的添加GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1" ,就可以建个后缀名为cfg,然后写上这个自定义的配置参数就可以了。
    在这里插入图片描述

  3. /etc/grub.d/,这个文件夹是执行脚本,就是把/etc/default/grub.d的自定义配置参数写到/boot/grub/grub.cfg,大概是这么个关系,真正运行逻辑也许更复杂,
    在这里插入图片描述
    以上就是grub配置参数的运行逻辑,所以解除docker限制内存警告,在/etc/default/grub.d建个xx.cfg的文件,添加GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1" 内容,然后执行sudo update-grub ,最后重启系统sudo reboot, 重启之后验证一下内核是否有新修改的配置参数cat /proc/cmdline, 看内容里是否有cgroup_enable=memory swapaccount=1

相关文章:

  • 风控——贷中管理介绍
  • ApplicationVerifier介绍说明
  • 设计模式之组合设计模式
  • 【机器人建模和控制】读书笔记
  • go语言给结构体绑定方法
  • IP网络广播服务平台upload接口存在任意文件上传漏洞
  • 【网络安全】学过编程就是黑客?
  • java:网络编程
  • Excel和Word日常使用记录:
  • vscode从本地安装插件
  • 【未解决】everything软件 中文文件夹 查找不到
  • Web 基础——Apache
  • JAVA 的excel数据批量导入解析 现在都用什么API工具 Apache POI 、EasyExcel 、easypoi有什么区别
  • 结构者设计模式
  • Linux进程概念
  • 还不懂BIO,NIO,AIO吗
  • 命令模式(Command Pattern)
  • 因IBM裁员聊一聊外企程序员如何应对
  • 需求分析例题
  • STM32工程中各部分文件作用
  • 绿景中国地产:洛杉矶酒店出售事项未能及时披露纯属疏忽,已采取补救措施
  • 商务部就开展加强战略矿产出口全链条管控工作应询答记者问
  • 外企聊营商|特雷通集团:税务服务“及时雨”
  • 媒体:“西北大学副校长范代娣成陕西首富”系乌龙,但她的人生如同开挂
  • 刘永明|在从普及到提高中发展新大众文艺
  • 中央结算公司:减免境外央行类机构账户开户费用