Paperless-NGX won't start after the update

Hello everyone,

I’m having the following problem. Paperless-ngx won’t start after the update. Paperless-ngx is installed as an app.

Update from version 1.6.2 to 1.6.17

Truenas version 25.10.3

Log from the container:

026-04-22 19:51:53.222534+00:00[init-start] paperless-ngx docker container starting…

2026-04-22 19:51:53.229384+00:00[init-start] paperless-ngx docker container starting init as root

2026-04-22 19:51:53.238787+00:00[env-init] Checking for environment from files

2026-04-22 19:51:53.242306+00:00[env-init] No *_FILE environment found

2026-04-22 19:51:53.251945+00:00[init-redis-wait] Waiting for Redis to report ready

2026-04-22 19:51:53.252637+00:00[init-db-wait] Waiting for PostgreSQL to start…

2026-04-22 19:51:53.252700+00:00[init-tesseract-langs] Checking if additional teseract languages needed

2026-04-22 19:51:53.252820+00:00[init-tesseract-langs] No additional installs requested

2026-04-22 19:51:53.255530+00:00id: ‘paperless’: no such user

2026-04-22 19:51:53.257863+00:00id: ‘paperless’: no such user

2026-04-22 19:51:53.258256+00:00[init-user] Mapping UID for paperless to 568

2026-04-22 19:51:53.260503+00:00usermod: user ‘paperless’ does not exist

2026-04-22 19:51:53.260857+00:00[init-user] Mapping GID for paperless to 568

2026-04-22 19:51:53.262554+00:00groupmod: group ‘paperless’ does not exist

2026-04-22 19:51:53.263071+00:00s6-rc: warning: unable to start service init-modify-user: command exited 6

2026-04-22 19:51:53.289237+00:00postgres:5432 - accepting connections

2026-04-22 19:51:53.289635+00:00[init-db-wait] Connected to PostgreSQL

2026-04-22 19:51:53.289838+00:00[init-db-wait] Database is ready

2026-04-22 19:51:53.960065+00:00Waiting for Redis…

2026-04-22 19:51:53.967116+00:00Connected to Redis broker.

2026-04-22 19:51:53.989585+00:00[init-redis-wait] Redis ready

2026-04-22 19:51:53.990289+00:00/run/s6/basedir/scripts/rc.init: warning: s6-rc failed to properly bring all the services up! Check your logs (in /run/uncaught-logs/current if you have in-container logging) for more information.

2026-04-22 19:51:53.990309+00:00/run/s6/basedir/scripts/rc.init: fatal: stopping the container.

Error: user ‘paperless’ does not exist

My question, why does the user “paperless” no longer exist, and how can I fix this?

It still existed before the update.

Perhaps someone else has encountered the same problem?

Thank you in advance.

I’m running into the exact same boot-loop on paperless-ngx 1.6.20 (app version 2.20.15). Container paperless exits with code 139 (segfault) during init-migrations, while postgres, redis, gotenberg and tika all start fine.

The error log shows binary incompatibility warnings before the segfault:

RuntimeWarning: datetime.date size changed, may indicate binary incompatibility. 
Expected 32 from C header, got 48 from PyObject
RuntimeWarning: datetime.time size changed, ... Expected 40, got 72
RuntimeWarning: datetime.datetime size changed, ... Expected 48, got 136
RuntimeWarning: datetime.timedelta size changed, ... Expected 40, got 48

s6-rc: warning: unable to start service init-migrations: command exited 139

Confirmed not a data issue: I rebuilt the app from scratch on a fresh host-path postgres dataset, restored a known-good pg_dumpall (612 docs, 19 tags), verified the database via an isolated postgres:18 container — DB is healthy, queries work, schema is intact. The paperless container still segfaults on the same import.

Also tried rolling back the chart to 1.6.19, 1.6.5 and 1.6.4 — all same crash. So this isn’t specific to 1.6.20.

This looks like an ABI mismatch between Python and a compiled C extension (likely psycopg) inside the container image, independent of the database state. Has anyone found a working chart version, or is a fix in the pipeline?

Hi, I solved my problem completely by accident. I’m still running the Home Assistant app. I updated the Home Assistant Postgres version to 18, and then suddenly the update for Paperless worked. Postgres for Paperless was already on version 18. I don’t see any connection and can’t explain why it worked now.