如何修复 docker NodeJS 容器不关闭
在 docker 容器中运行 NodeJS 服务器时,你经常会遇到容器不能正确关闭而是需要很长时间(几分钟)才能关闭的问题。
要修复此问题,将以下代码添加到你的主 NodeJS 文件中(通常你应该将其添加到文件顶部以确保没有任何东西阻止它执行)
docker_node_signal_handlers.js
process.on('SIGTERM', function() {
console.log('SIGTERM received, shutting down...');
process.exit(0);
});
process.on('SIGINT', function() {
console.log('SIGINT received, shutting down...');
process.exit(0);
});一旦收到 SIGINT 或 SIGTERM,这将强制 NodeJS(或多或少立即)退出。通常,Docker 在容器关闭时发送 SIGTERM。
背景信息
查看此 GitHub 指南
Check out similar posts by category:
NodeJS
If this post helped you, please consider buying me a coffee or donating via PayPal to support research & publishing of new posts on TechOverflow