如何在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文件。

SIGTERMSIGINT都告诉Tomcat运行closures钩子(删除PID文件)并正常closures。

SIGTERM相当于运行kill <pid> ,也是docker的默认值。

SIGINT相当于按下ctrl-C