docker殺死容器的方法:
docker stop
當我們用docker stop命令來停掉容器的時候,docker默認會允許容器中的應用程序有10秒的時間用以終止運行。
在docker stop命令執行的時候,會先向容器中PID為1的進程發送系統信號SIGTERM,然后等待容器中的應用程序終止執行,如果等待時間達到設定的超時時間,或者默認的10秒,會繼續發送SIGKILL的系統信號強行kill掉進程。
docker kill
接著我們來看看docker kill命令,默認情況下,docker kill命令不會給容器中的應用程序有任何gracefully shutdown的機會。它會直接發出SIGKILL的系統信號,以強行終止容器中程序的運行。
比如,如果我們想向docker中的程序發送SIGINT信號,我們可以這樣來實現:
docker kill –signal=SIGINT container_name
與docker stop命令不一樣的地方在于,docker kill沒有任何的超時時間設置,它會直接發送SIGKILL信號,以及用戶通過signal參數指定的其他信號。強行終止進程。
因此,docker kill適合用來強行終止程序并實現快速停止容器。而如果希望程序能夠 gracefully shutdown(優雅的停止)的話,docker stop才是不二之選。
更多相關教程,請關注PHP中文網docker教程欄目。
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END
喜歡就支持一下吧
相關推薦