My PHP container runs puppeteer to generate PDF. By generating a PDF document, it also creates two core dump files inside my container. I am not sure where they actually come from.
The host/server is CentOS 7.
/var/log/messages
By following Disable core dumps section of https://linux-audit.com/understand-and-configure-core-dumps-work-on-linux/, I've done:
/etc/security/limits.conf
* soft core 0
* hard core 0
Created a disable-core-dumps.sh by: echo “ulimit -c 0 > /dev/null 2>&1” > /etc/profile.d/disable-coredumps.sh
Added following content to /etc/systemd/coredump.conf
[Coredump]
Storage=none
ProcessSizeMax=0
And reboot the server and the container.
I've also tried to set ulimit -c 0
inside the container (alpine)
None of the tricks above work for me. Everytime the puppeteer generates a PDF it always create two core dump files like below:
core.131 core.52
The core files look like:
Can anyone helps me to disable the core dumps? Thanks a lot.
Yes, you can safely delete the core files.
A core dump or a crash dump is a memory snapshot of a running process. A core dump can be automatically created by the operating system when a fatal or unhandled error (for example, signal or system exception) occurs. Alternatively, a core dump can be forced by means of system-provided command-line utilities.
Created a disable-core-dumps.sh by: echo “ulimit -c 0 > /dev/null 2>&1” > /etc/profile.d/disable-coredumps.sh And reboot the server and the container. I've also tried to set ulimit -c 0 inside the container (alpine) None of the tricks above work for me. Everytime the puppeteer generates a PDF it always create two core dump files like below:
Docker rm is a Docker command used to delete or remove one or more containers. In order to remove the container, it should be in the stopped state; however, we can forcefully remove a running container using the ‘-f’ flag. We need a container ID or container name to remove the container.
This article discusses how to use Docker to open a core dump file on a Windows virtual machine (VM). To complete this section, you should have at least one core dump file copied on your Windows VM in any folder. You'll learn how to open a core dump file on another Linux VM by using Docker.
A Docker container image is a lightweight, standalone, executable software package that includes everything that's required to run an application: Code, runtime, system tools, system libraries, and settings. Simply put, you can use Docker containers to run and deploy your applications.
You have to start your container with the option --ulimit core=0
to disable coredumps.
Reference: https://docs.docker.com/engine/reference/commandline/run/#set-ulimits-in-container---ulimit
On the host, temporarily set the coredump path to /tmp
for verification:
echo '/tmp/core.%e.%p' | sudo tee /proc/sys/kernel/core_pattern
Start a container as usual and force a core dump:
docker run --rm -it bash
(inside the container)
# yes > /dev/null &
# kill -SIGABRT $(pidof yes)
# ls /tmp
(shows core.yes.<pid>)
Now, with --ulimit core=0
:
docker run --ulimit core=0 --rm -it bash
(inside the container)
# yes > /dev/null &
# kill -SIGABRT $(pidof yes)
# ls /tmp
(No entries)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With