Updated to 1.83.2, appears to be crashing, can't get any useful debug info - self hosted docker

I updated my self-hosted docker image to 1.83.2 and now n8n appears to just crash out with no useful info to work with. It was working fine on the previous version but started this as soon as I updated it. I just get “502” errors from nginx. Worth noting the container doesn’t seem to be crashing, it appears in portainer to be running fine.
Was there a change I’m not aware of or can’t find the correct info on? Any tips to figure out where the fault is would be greatly appreciated. thx.

Here’s the info I can provide. I set:

N8N_LOG_LEVEL=debug
N8N_DIAGNOSTICS_ENABLED=false

to try and get some info but nothing happens. My crash.journal in my data volume is empty.

my docker env (domains replaced):

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
NODE_VERSION=20.18.3
YARN_VERSION=1.22.22
NODE_ICU_DATA=/usr/local/lib/node_modules/full-icu
N8N_VERSION=1.83.2
NODE_ENV=production
N8N_RELEASE_TYPE=stable
SHELL=/bin/sh
N8N_HOST=n8n.mydomain.com
VUE_APP_URL_BASE_API=https://n8n.mydomain.com/
N8N_PATH=/
WEBHOOK_URL=https://n8n.mydomain.com/
N8N_EDITOR_BASE_URL=https://n8n.mydomain.com/
VUE_APP_PUBLIC_PATH=https://n8n.mydomain.com/
WEBHOOK_TUNNEL_URL=https://n8n.mydomain.com/
N8N_PUSH_BACKEND=sse
N8N_LOG_LEVEL=debug
N8N_DIAGNOSTICS_ENABLED=false

In portainer my logs just look like this. I can see the “last session crashed” but as I said the crash.journal is empty.

2025-06-17T16:24:12.217Z | warn | Permissions 0644 for n8n settings file /home/node/.n8n/config are too wide. This is ignored for now, but in the future n8n will attempt to change the permissions automatically. To automatically enforce correct permissions now set N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true (recommended), or turn this check off set N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=false. {"file":"instance-settings.js","function":"ensureSettingsFilePermissions"}
2025-06-17T16:24:12.227Z | info | User settings loaded from: /home/node/.n8n/config {"file":"instance-settings.js","function":"loadOrCreate"}
2025-06-17T16:24:14.109Z | error | Last session crashed {"file":"crash-journal.js","function":"init"}
2025-06-17T16:24:24.114Z | info | Initializing n8n process {"file":"start.js","function":"init"}
2025-06-17T16:24:24.319Z | debug | Lazy-loading nodes and credentials from n8n-nodes-base {"nodes":481,"credentials":384,"file":"lazy-package-directory-loader.js","function":"loadAll"}
2025-06-17T16:24:24.328Z | debug | Lazy-loading nodes and credentials from @n8n/n8n-nodes-langchain {"nodes":93,"credentials":21,"file":"lazy-package-directory-loader.js","function":"loadAll"}

adding N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS per that message to either true or false in my env doesn’t do anything. Maybe that’s what’s going on, but there’s no concrete info to really go on.

My nginx error logs just show:
*11603 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: <ext ip>, server: n8n.mydomain.com, request: "GET / HTTP/2.0", upstream: "http://127.0.0.1:5678/", host: "n8n.mydomain.com"

if this version is giving your problem, try to download previous stable release
stop docker
rm image
pull new one
and restart your docker container
see if the issue persists.

1 Like

aha. I went back and found that the problem is actually updating from 1.95.3 to 1.97.1, NOT 1.83.2. that was somehow set in my env and I’m not sure why.

but its probably this:

since I don’t have ipv6 turned on at all…

looks like this is still open. i’ll keep an eye on this and wait for a fix before I try updating again.

Not sure why I didn’t try rolling it back, super derp moment on my part. thanks for that.

just confirmed, setting:

N8N_LISTEN_ADDRESS=0.0.0.0

in my ENV fixes this. running 1.98.2 / latest happily again.