如何在Docker中使用STOPSIGNAL指令?
我已经安装了Docker 1.9,想知道我是否以正确的方式使用指令。
FROM internal.docker.registry / image1
维护者internal@abc.com
COPY sample.war webapps / sample.war
STOPSIGNAL SIGKILL
我的理解是,当我这样做
docker停止container_id
,它会停止在容器内运行的tomcat。 它也将删除Pid文件。
请确认我是否有正确的理解。
SIGKILL
是一个立即停止进程的信号,不会让进程干净地退出,所以SIGKILL
不会允许Tomcat正常closures并删除它的PID文件。
SIGTERM
和SIGINT
都告诉Tomcat运行closures钩子(删除PID文件)并正常closures。
SIGTERM
相当于运行kill <pid>
,也是docker的默认值。
SIGINT
相当于按下ctrl-C
。