You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker ENTRYPOINT脚本无法接收SIGTERM信号的问题求助

Docker ENTRYPOINT脚本无法接收SIGTERM信号的问题求助

大家好,我最近在做Docker容器相关的开发时遇到了一个棘手的问题,想请教一下各位大佬。

我的需求是:让容器在退出时,能把内部的数据保存到和宿主机绑定的目录中。为了实现这个,我在启动脚本里设置了SIGTERM信号的捕获,但实际运行时,这个捕获逻辑完全没触发。

先给大家看一下我的配置:

Dockerfile中的ENTRYPOINT配置

ENTRYPOINT ["/bin/bash","start.sh"]

start.sh脚本内容

trap 'echo "replace with command that saves data"' SIGTERM
java -jar program.jar

问题核心是:这个trap命令完全没接住SIGTERM信号,导致我没法执行数据保存的逻辑。另外需要强调的是,我希望是start.sh脚本本身接收信号并处理数据保存,而不是让里面运行的Java程序来做这件事。

有没有朋友遇到过类似的问题?或者能帮我分析下哪里出问题了吗?

备注:内容来源于stack exchange,提问作者OctonalXX

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 08:09:38