云计算核心技术Docker教程:Docker限制容器对内存
Docker可以强制执行硬性内存限制,即允许容器使用不超过给定数量的用户或系统内存;或软性限制,其可以允许容器使用所需数量的内存,除非满足某些条件,例如内核检测到主机上的内存不足或争用。当单独使用或设置多个选项时,其中一些选项会产生不同的效果。
大部分的选项取正整数,跟着一个后缀b,k, m,g,,表示字节,千字节,兆字节或千兆字节。
参数选项
-m 或者 --memory=
容器可以使用的最大内存量。如果设置此选项,则允许的最小值为4m(4 MB)。
--memory-sap
允许此容器交换到磁盘的内存量。
--memory-sappiness
默认情况下,主机内核可以换出一定比例的容器使用的匿名页面。您可以设置--memory-sappiness一个介于0到100之间的值来调整此百分比。
--memory-reservation
允许您指定一个小于--memoryDocker在主机上检测到争用或内存不足时激活的软限制。如果使用--memory-reservation,则必须将其设置为低于,--memory以使其具有优先权。因为这是一个软限制,所以不能保证容器不超过该限制。
--kernel-memory
容器可以使用的最大内核内存量。允许的最小值是4m。由于无法交换内核内存,内核内存不足的容器可能会阻塞主机资源,这可能会对主机和其他容器产生副作用。
--oom-kill-disable
默认情况下,如果发生内存不足(OOM)错误,则内核将终止容器中的进程。要更改此行为,请使用该--oom-kill-disable选项。仅在还设置了该-m/--memory选项的容器上禁用OOM杀手。如果-m未设置该标志,则主机可能会用完内存,内核可能需要终止主机系统的进程以释放内存。
--memory-sap细节
--memory-sap是修饰符标志,仅在--memory设置时才有意义。使用交换允许容器在将可用的所有RAM用尽时将多余的内存需求写入磁盘。经常将内存交换到磁盘的应用程序会降低性能。
其设置可能会产生复杂的影响
如果--memory-sap设置为正整数,那么这两个--memory和 --memory-sap必须设定。--memory-sap表示可以使用的内存和交换总量,并--memory控制非交换内存使用的总量。,如果--memory="300m"和--memory-sap="1g",则容器可以使用300m的内存和700m(1g - 300m)交换。
如果--memory-sap将设置为0,则忽略该设置,并且该值被视为未设置。
如果--memory-sap将设置为与相同的值--memory,并且--memory将其设置为正整数,则该容器无权访问sap。请参阅 防止容器使用sap。
如果--memory-sap未设置,并且--memory已--memory设置,则在主机容器配置了交换内存的情况下,容器可以使用与设置一样多的交换。例如,如果--memory="300m"与--memory-sap没有设置,该容器可以在总的内存和交换使用600米。
如果--memory-sap将显式设置为-1,则允许该容器使用无限制交换,最高不超过主机系统上可用的数量。
人工智能培训
- 真正能和人交流的机器人什么时候实现
- 国产机器人成功完成首例远程冠脉介入手术
- 人工智能与第四次工业革命
- 未来30年的AI和物联网
- 新三板创新层公司东方水利新增专利授权:“一
- 发展人工智能是让人和机器更好地合作
- 新春贺喜! 经开区持续推进工业互联网平台建设
- 以工业机器人为桥 传统企业如何趟过智造这条河
- 山立滤芯SAGL-1HH SAGL-2HH
- 2015国际智能星创师大赛火热报名中!
- 未来机器人会咋看人类?递归神经网络之父-像蚂
- 成都新川人工智能创新中心二期主体结构封顶
- 斯坦德机器人完成数亿元人民币C轮融资,小米产
- 到2020年,智能手机将拥有十项AI功能,有些可能
- 寻找AI机器人的增长“跳板”:老龄化为支点的产
- 力升高科耐高温消防机器人参加某支队性能测试