diff --git a/nodemon.json b/nodemon.json index f035e69..d150712 100644 --- a/nodemon.json +++ b/nodemon.json @@ -5,7 +5,8 @@ "ts": "node -r ts-node/register" }, "env": { - "TS_NODE_PROJECT": "packages/server/tsconfig.json" + "TS_NODE_PROJECT": "packages/server/tsconfig.json", + "HERMES_WEB_UI_STOP_GATEWAYS_ON_SHUTDOWN": "0" }, "exec": "node -r ts-node/register packages/server/src/index.ts", "nodeArgs": ["--no-warnings"], diff --git a/packages/server/src/services/shutdown.ts b/packages/server/src/services/shutdown.ts index 70c0f7d..f923b08 100644 --- a/packages/server/src/services/shutdown.ts +++ b/packages/server/src/services/shutdown.ts @@ -3,8 +3,8 @@ import { closeDb } from '../db' import { getGatewayManagerInstance } from './gateway-bootstrap' function shouldStopGatewaysOnShutdown(signal: string): boolean { - // 总是停止网关,无论是开发环境还是生产环境 - // 这样可以避免 nodemon 重启时的孤儿进程问题 + // nodemon may use SIGTERM on Windows restarts, so dev mode opts out via env. + // Production keeps stopping owned gateways by default. const override = process.env.HERMES_WEB_UI_STOP_GATEWAYS_ON_SHUTDOWN?.trim() if (override === '0' || override === 'false') return false if (override === '1' || override === 'true') return true