如何禁用Docker容器中的核心文件转储

我的PHP容器运行puppeteer生成PDF。通过生成PDF文档,它还在我的容器内创建了两个核心转储文件。我不确定它们的真正来源。

主机/服务器是CentOS 7。

我已经检查了以下内容:

  1. 没有应用程序错误日志,Browsershot / puppeteer正在运行,没有错误。
  2. /var/log/messages中找不到错误日志(例如segfault)

我尝试禁用核心转储

通过遵循https://linux-audit.com/understand-and-configure-core-dumps-work-on-linux/的“禁用核心转储”部分,我已经完成:

  1. 将以下内容添加到/etc/security/limits.conf
* soft core 0
* hard core 0
  1. 通过以下方式创建了disable-core-dumps.sh:echo “ulimit -c 0 > /dev/null 2>&1” > /etc/profile.d/disable-coredumps.sh

  2. /etc/systemd/coredump.conf

  3. 中添加了以下内容
[Coredump]

Storage=none
ProcessSizeMax=0
  1. 然后重新启动服务器和容器

  2. 我还尝试过在容器(高山)中设置ulimit -c 0

以上所有技巧都不适合我。人偶每次生成PDF时,总是会创建两个核心转储文件,如下所示:

core.131 core.52

核心文件如下:

如何禁用Docker容器中的核心文件转储

谁能帮助我禁用核心转储?非常感谢。

lglzn 回答:如何禁用Docker容器中的核心文件转储

我在docker swarm服务上也遇到了这个问题,--ulimit core = 0在我在以下命令中使用的swarm服务中不起作用,并且在docker swarm服务中为我工作了!

sysctl -w kernel.core_pattern = / dev / null

,

对于使用docker-compose的用户,在.yml文件中设置ulimits

services:
    app:
        ulimits:
            core:
                hard: 0
                soft: 0
本文链接:https://www.f2er.com/3162436.html

大家都在问