Zurück zur Übersicht

Begriff

Container Lifecycle

Containerization Docker S1
2 Quellen 1 Lernpfad 0 Backlinks enriched

Warum wichtig?

Dieser Begriff ist ein Knoten im SengakujiWorks-Wissensnetz. Nutze Level 0 für die erste Einordnung, Level 1 für Praxis, Level 2 für technische Struktur und Level 3 für Grenzen, Fallstricke und Expertenkontext.

Ein Container ist wie ein Lebewesen. Er wird geboren, arbeitet, schläft vielleicht, und stirbt. Den Programmierer interessiert vor allem der Tod:

  • Stirbt er unerwartet? (Absturz -> Neustart nötig).
  • Stirbt er geplant? (Update -> Graceful Shutdown). Der Lifecycle beschreibt diese Phasen: Created -> Running -> Paused -> Exited (Stopped) -> Dead (Deleted). Zu verstehen, warum ein Container in welchem Zustand ist, ist die Basis für Debugging.

Merksatz: Die Abfolge von Zuständen, die ein Container von der Erstellung (Create) über die Ausführung (Run) bis zur Beendigung (Stop/Kill) und Entfernung (Rm) durchläuft.


Quick-Check

  1. Was bedeutet Exit Code 137?
    128 + 9 = 137. Das ist SIGKILL. Entweder hast du kill gedrückt, oder der OOM Killer (Out of Memory) hat den Prozess erschossen. Ein klassisches Indiz für Speicherprobleme.
  2. Was bedeutet Exit Code 0?
    Erfolg. "Ich bin fertig und habe keine Fehler." Typisch für "One-Shot" Container (Batch Jobs), aber untypisch für Webserver (die sollten nie Exit 0 machen, außer beim Shutdown).
  3. Warum dauert docker stop manchmal genau 10 Sekunden?
    Weil deine App SIGTERM ignoriert. Docker wartet höflich 10s und tötet sie dann. Fixe dein Signal Handling im Code!