Skip to main content

Interactive tool

What that exit code means

Exit codes are the first evidence you get when a container dies, and the most commonly misread. This explains the common ones and teaches the rule behind them, so you can decode a code this page has never heard of.

Runs in your browser · nothing is sent anywhere

From kubectl describe pod — the Exit Code in the Last State block.

137SIGKILL — usually OOMKilled

128 + 9: killed by SIGKILL. In Kubernetes this almost always means the container exceeded its memory limit and the kernel terminated it. There is no graceful shutdown, so logs typically just stop mid-sentence.

What to do

  • Confirm with kubectl describe pod — look for Reason: OOMKilled in Last State.
  • Then determine whether the limit is too low or the application is leaking; the fixes are opposite.

Full troubleshooting page for this →

The rule worth remembering

Exit codes above 128 mean the process was killed by a signal, and the signal number is the code minus 128. So 137 is SIGKILL (9), 143 is SIGTERM (15) and 139 is SIGSEGV (11). Once you know that, most container exit codes decode themselves.

Related troubleshooting

Did this get you to an answer?

No text box on purpose — please do not paste production logs anywhere