开发者社区 问答 正文

Swarm 集群 服务编排 oom_kill_disable

设置是否禁止 OOM Killer,和docker run 命令中的--oom-kill-disable参数语义一致。 wordpress:
  image: wordpress:4.2
  oom-kill-disable: true

https://help.aliyun.com/document_detail/48494.html

展开
收起
青蛙跳 2018-08-22 16:54:25 1370 分享 版权
阿里云 AI 助理回答

在Docker环境中,通过在docker run命令中使用--oom-kill-disable参数,可以为容器设置禁止OOM Killer(Out of Memory Killer)的功能。这意呀着即使容器内的进程导致内存耗尽,系统也不会自动终止该容器内的进程来释放内存。这样的配置能够保护关键服务免受意外的内存不足导致的终止,但同时也可能让系统整体面临资源耗尽的风险,因此需谨慎使用。

对于您提供的WordPress容器配置示例:

wordpress:
  image: wordpress:4.2
  oom-kill-disable: true

这段配置意图是希望禁用WordPress容器内的OOM Killer机制,确保在遇到内存压力时,WordPress容器不会被操作系统直接杀死。不过,请注意上述配置格式更像YAML格式,通常用于Docker Compose文件或Kubernetes的Deployment等配置中。在实际操作中,若使用Docker Compose,正确的配置应如下所示:

version: '3'
services:
  wordpress:
    image: wordpress:4.2
    mem_limit: 512m  # 可选:限制容器最大可用内存
    oom_kill_disable: true  # 禁用OOM Killer

而在直接使用docker run命令启动容器时,相应的命令语法为:

docker run -d --name my_wordpress --oom-kill-disable -p 80:80 wordpress:4.2

这里,--oom-kill-disable参数的使用与您的需求一致,确保了启动的WordPress容器中的进程在遭遇内存不足时不会被系统默认的OOM Killer机制终止。但请记住,这种做法需要您主动管理容器的内存使用,避免因个别容器消耗过多内存而影响整个系统的稳定性。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答
问答分类:
问答地址: