Wie Docker einen Container tötet:
Docker Stop
Wenn wir den Docker Stop-Befehl verwenden, um den Container zu stoppen Dieses Mal lässt Docker der Anwendung im Container standardmäßig 10 Sekunden Zeit, bis sie beendet wird.
Wenn der Docker-Stoppbefehl ausgeführt wird, sendet er zunächst das Systemsignal SIGTERM an den Prozess mit PID 1 im Container und wartet dann darauf, dass die Anwendung im Container die Ausführung beendet, wenn die Wartezeit erreicht ist Das eingestellte Zeitlimit oder die standardmäßigen 10 Sekunden senden weiterhin das SIGKILL-Systemsignal, um den Prozess gewaltsam abzubrechen.
docker kill
Dann werfen wir einen Blick auf den Docker-Kill-Befehl. Standardmäßig gibt der Docker-Kill-Befehl der Anwendung im Container keine Chance, ordnungsgemäß zu funktionieren abschalten. . Es sendet direkt das SIGKILL-Systemsignal, um die Ausführung des Programms im Container zwangsweise zu beenden.
Wenn wir beispielsweise ein SIGINT-Signal an ein Programm in Docker senden möchten, können wir das so machen:
docker kill --signal=SIGINT container_name
mit dem Docker-Stopp-Befehl Der Unterschied besteht darin, dass Docker Kill keine Timeout-Einstellung hat. Das SIGKILL-Signal und andere vom Benutzer über den Signalparameter angegebene Signale werden direkt gesendet. Beenden Sie den Vorgang zwangsweise.
Daher eignet sich Docker Kill, um das Programm gewaltsam zu beenden und den Container schnell zu stoppen. Und wenn Sie möchten, dass das Programm ordnungsgemäß beendet wird, ist Docker Stop die beste Wahl.
Weitere verwandte Tutorials finden Sie in der Spalte Docker-Tutorial auf der chinesischen PHP-Website.
Das obige ist der detaillierte Inhalt vonWie Docker festsitzende Container tötet. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!