Paperless-ngx Setup: Document and Invoice Archive with OCR
Deploy Paperless-ngx with PostgreSQL, Redis and OCR on Ubuntu, including scanner intake, email consumption, document rules, Nginx TLS, exporter backup, restore and integrity checks.
What will be running at the end?
Deploy Paperless-ngx with PostgreSQL, Redis and OCR on Ubuntu, including scanner intake, email consumption, document rules, Nginx TLS, exporter backup, restore and integrity checks. Every command is presented as an operational step; replace example hostnames, passwords and secrets before execution.
Architecture and requirements before installation
Ubuntu 24.04 LTS with sudo access and a dedicated IPv4 address
Docker Engine and Compose v2 where the deployment uses containers
A DNS A record pointing the application hostname to the server
NVMe capacity sized for application data, logs, temporary files and backups
Memory and CPU headroom based on measured concurrency rather than vendor minimums
sudo docker compose down
sudo docker compose up -d db broker
sudo docker compose run --rm webserver document_importer ../export --no-progress-bar
sudo docker compose up -d
Paperless-ngx Setup must be isolated behind HTTPS; databases, queues and internal APIs must not be published directly to the internet.
Production note
Pin tested image versions before production. Read release notes and take an application-consistent backup before database migrations.
Production note
A database dump alone may be incomplete. Preserve persistent files, configuration, encryption keys and the exact deployed version together.
Production note
Validate the installation with a real transaction or workload, then reboot the host and confirm automatic recovery before accepting production traffic.
Common failures and root causes
Belirti / Symptom
Kök neden ve çözüm / Root cause and fix
Service or container does not start
Inspect compose configuration, dependency health, file permissions and the first fatal log line instead of repeatedly restarting.
Yes after secrets are replaced, public access is restricted and a complete restore test has succeeded.
Are minimum resources enough?
Minimums only prove the software can start. Size CPU, memory, IOPS and storage from representative workload measurements.
Can I use Cloudflare?
Yes. Use Full (strict) TLS and configure origin certificates, WebSockets and client IP forwarding where required.
Should upgrades be automatic?
Do not automatically apply major releases. Review migrations, back up data and retain the previous tested image.
What must be backed up?
Back up databases, uploaded files, persistent volumes, configuration, encryption keys and the deployed version together.
VPS or GPU server?
An NVMe VPS fits normal web workloads. Inference, accelerated OCR and video transcoding may require a compatible GPU.
Contact us for deployment
Deploy Paperless-ngx with PostgreSQL, Redis and OCR on Ubuntu, including scanner intake, email consumption, document rules, Nginx TLS, exporter backup, restore and integrity checks.