Docker 容器在 Jelastic 环境中停止

Docker container stopping in the Jelastic environment

在本机 Docker 环境中停止 Docker 容器时,默认情况下它会向容器的初始化进程 (PID 1) 发送 SIGTERM 信号,该进程应该是实际的应用程序,然后应该处理关机正常。然而,当 运行ning 容器在 Jelastic 中时,情况似乎并非如此,而且服务器似乎每次都崩溃,而不是优雅地终止 SQL 服务器。

我确实尝试编写并启用获取 SQL PID 的 Systemd 服务,然后将 SIGTERM 发送给它,但它似乎没有 运行,从日志判断没有根本没有服务关闭消息,只是启动消息。

那么需要对容器或环境进行哪些更改才能使服务器获得 SIGTERM 信号并有足够的时间(可能几秒钟)进行正常关机?

感谢您报告该问题,我们尝试在我们的测试实验室中重现该问题并获得完全相同的结果。我们同意这个问题确实很严重,所以我们现在将以最高优先级解决它。对于给您带来的不便,请接受我们的歉意。我想指出,由于我们的主要设计,我们还希望进程首先以 "sigterm" 信号终止,并且只有在一段时间内未收到终止结果后,系统才必须发送 "sigkill",只有在考虑到该过程无法正常终止之后。我们的工程师将致力于此以更深入地探索该问题,并将很快提供修复。

谢谢!