什么是Docker在说“没有交换的内存限制”时的含义
当我运行docker时,我收到警告:
我试图找出这意味着什么,特别是“没有交换的内存限制”这句话. 这是否意味着容器可以使用比通常使用主机的交换空间通常允许的容量更多的内存?或者它是否意味着即使主机完全耗尽内存,容器也无法使用交换空间?是否配置了交换空间?如果你不使用交换,这是无关紧要的吗? 注意:我对如何修复它不感兴趣 – 谷歌上有很多关于它的结果.我对它的意义以及它为何重要感兴趣. 最佳答案
这是我发现的.
默认情况下不使用交换.您可以在/sys/fs/cgroup/memory/memory.stat上的Ubuntu / Debian容器上查看.检查swap value,你会看到它被设置为0(字节).没有交换使用. 你可以使用带有–memory和–memory-swap标志的enable and limit swap usage,这里就是这个WARNING似乎能得到你的地方.从Docker’s documentation起关于一个非常相似的警告:
tl; dr:默认禁用交换.如果cgroup被禁用或容器交换限制受到影响,就像此警告所示,您将无法设置这些限制. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |