簡體   English   中英

無法使用SIGKILL殺死docker容器中的pid 1

[英]Cannot kill pid 1 inside docker container with SIGKILL

有一個原因,我想殺死docker容器中的主要python進程(PID 1)。 但是沒有像SIGTERMSIGKILL那樣的終止信號。 我的意思是,運行kill -SIGKILL 1沒有效果。 如何從容器內部殺死pid 1? 我不想運行docker stop或類似的解決方案。

根據Docker問題跟蹤器以及pid 1s的一般文檔說明,您需要專門為信號添加處理程序並從中殺死進程。

signal.signal(signal.SIGINT, exit_gracefully)
signal.signal(signal.SIGTERM, exit_gracefully)

exit_gracefully需要定義並最終調用sys.exit(0)

內核需要並強制執行此行為,因為它不會在其他pid上調用sigaction default(即終止)。

我們需要在Node.js中做類似的事情。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM