Skip to main content
Data

Self-host Paperless-ngx on a VPS

Scan, index and search your paper documents.

Turn paper into a searchable archive with OCR, tags and correspondents, so you can find any document instantly.

Why self-host Paperless-ngx?

Paperless-ngx gives you a searchable personal archive with OCR, keeping sensitive documents off third-party clouds.

How to install Paperless-ngx

  1. 1

    Provision a VPS

    Choose a plan with room for your data as well as the app.

  2. 2

    Install the stack

    Install Docker Compose (Django, Postgres, Redis, Tika).

  3. 3

    Deploy the application

    Follow the project’s official install guide for your distribution.

  4. 4

    Enable HTTPS

    Serve it on your own domain behind a reverse proxy with a certificate.

  5. 5

    Back it up

    Schedule a database dump plus a copy of any uploaded files to an off-box location.

Practical tips

  • Give Paperless-ngx its own database user with rights only on its own schema.
  • Reverse-proxy Paperless-ngx and terminate TLS at the proxy so certificates are managed in one place.
  • Take a VPS snapshot before major upgrades so you can roll back cleanly.
  • Keep Paperless-ngx patched — most self-hosting incidents are unpatched software.

Frequently asked questions

How much RAM does Paperless-ngx need?
Plan on 2–4 GB for typical use; add headroom if you expect many concurrent users.
What stack does Paperless-ngx run on?
Docker Compose (Django, Postgres, Redis, Tika).
Can I run other things on the same VPS?
Yes — size the plan so Paperless-ngx plus your other workloads fit in RAM with room to spare.

Looking for something else? Popular alternatives include Docspell, Mayan EDMS, Evernote (hosted) — browse all app guides.