Service container being immediately killed by SIGTERM due to persistent Health Check failure.
Anonymous
PROOP

5 months ago

DetailStatusFailure TriggerSIGTERM signal (indicating Health Check failure).Root CauseUnderlying network error: ResponseError: Invalid origin! during proxy/WebSocket communication.Railway ConfigHealthcheck Timeout is set to 180 seconds (timeout is not the issue).n8n ConfigAll necessary environment variables have been set correctly: N8N_HOST (no trailing slash), N8N_PROXY_HOPS=1, N8N_PUSH_BACKEND=websocket, correct DB_URL and QUEUE_BULL_REDIS_URL.Final ConclusionThe Health Check failure is caused by a Railway proxy/routing issue that is either blocking the health request or not passing the correct origin headers, leading to the service rejection.

Please inspect the network routing configuration for this project. We need to ensure that the Health Check request receives a successful 200 OK response without being blocked by the origin validation logic.

$10 Bounty

1 Replies

jqcktalks
FREE

5 months ago

Don't run a health check on /. Use n8n's built-in endpoint by running a GET request on /healthz and set the timeout to be anything longer than 30 seconds. This should fix your case, if not, make sure that n8n knows its public URL (by adding N8N_HOST, N8N_PROTOCOL, N8N_EDITOR_BASE_URL and WEBHOOK_URL as environment variables).

At the end of the day, this isn't Railway's fault. They send a normal HTTP probe without blocking headers or maliciously stripping origins. n8n assumes that it's a 'browser-style' request and enforces strict origin matching and fails hard before responding - this is a known behaviour, and I hope that some of my insights help, but if not, best of luck getting it resolved!


Welcome!

Sign in to your Railway account to join the conversation.

Loading...