Your container died and docker ps -a shows something like Exited (137) 4 minutes ago. Nine times out of ten that's the kernel's OOM killer, not your app crashing on its own. Here's what exit code 137 actually means and how I go about stopping it from happening again.

What exit code 137 actually means

Exit code 137 is 128 + 9. The 128 + part is the shell convention for "terminated by a signal," and 9 is SIGKILL. So 137 means your process was hard-killed — no chance to clean up, no graceful shutdown.

Two things commonly send that SIGKILL:

The kernel OOM killer. Your container hit its memory cgroup limit, or the whole host ran out of RAM, and the kernel picked a process to kill to stay alive.