泊坞窗停止命令GlassFish
我有GlassFish的容器。 启动我的容器的命令是
/opt/glassfish4/glassfish/bin/asadmin start-domain --verbose
当我用停止命令停止容器时,停止了一个错误。 它以代码137停止(被OOMKiller破坏)。
Exited (137) 3 seconds ago
我将停止命令的-t参数更改为1000,但结果相同 – 错误代码为137
当我运行命令
docker exec -it ecai /opt/glassfish4/glassfish/bin/asadmin stop-domain
容器在2秒内停止,代码为0。
如何设置一个标准停止命令,使容器停止与代码0?
docker stop
向主进程发送SIGTERM,等待进程docker stop
的宽限期(默认为10秒),如果进程没有自行closures,则发送一个SIGKILL。
这个问题是Glassfish在收到SIGTERM时突然终止。
解决这个问题的方法是创build一个shell脚本作为您的Glassfish图像的入口点,您可以在其中pipe理收到的信号。 要做到这一点,你可以使用trap
来做下面的事情。
#!/bin/bash _term() { /opt/glassfish4/glassfish/bin/asadmin stop-domain } trap _term SIGTERM /opt/glassfish4/glassfish/bin/asadmin start-domain --verbose
希望这有帮助,祝你好运!