Deploy Paperless-ngx

Scan, OCR & organize your documents

Deploy Paperless-ngx

Just deployed

/data

Just deployed

/usr/src/paperless/data

/var/lib/postgresql/data

Deploy and Host self hosted Paperless-ngx (Open-Source Document Management) on Railway

Paperless-ngx is a free, GPL-3.0 document management system that scans, OCRs, and organizes paper. This Railway template runs the official v3.3.0 Docker image with Postgres, Redis, and a persistent volume. You get full-text search, tags, correspondents, and workflows without SaaS fees.

About Hosting Paperless-ngx open-source software on Railway (self hosted Paperless-ngx template)

Railway's template deploys three services: the Paperless-ngx web app from ghcr.io/paperless-ngx/paperless-ngx:3.3.0 on port 8000, Postgres, and Redis for Celery. A volume mounts at /usr/src/paperless/data and stores data, media, and consume directories, persisting across deploys. Admin credentials come from environment variables; PAPERLESS_SECRET_KEY and PAPERLESS_ADMIN_PASSWORD are generated fresh on every deploy.

Why Deploy Paperless-ngx, the Evernote alternative on Railway (Railway Free Trial)

If you're tired of Evernote's subscription and closed data silo, Paperless-ngx gives you the same scan-and-search workflow on infrastructure you control. Try it with Railway's $5 free trial before committing.

Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.

By deploying Paperless-ngx on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.

Railway vs Other Hosting Providers and VPS for Paperless-ngx self hosting

ProviderSetup experienceTypical costNotes
DigitalOceanCreate droplet, install Docker, edit env, run compose$6-24/moYou manage OS updates, backups, firewall
AWSEC2 or ECS, IAM, security groupsOften $10-40/mo with storageOverkill for personal archive unless you already use AWS
HetznerCloud server, install Docker, run composeEUR 4-15/moGood EU value; you handle server maintenance

Common Use Cases for hosted Paperless-ngx

  • Scan and shred paper: upload scans, OCR, discard physical copies.
  • Searchable receipts: full-text search across PDFs and images.
  • Mail fetching: IMAP rules pull attachments and file them automatically.
  • Automated tagging: ML auto-tagger or workflows assign tags, correspondents, types.
  • PDF/A archive copies: keep long-term PDF/A versions for compliance.

Dependencies for Paperless-ngx Docker hosted on Railway

A working deployment needs the Paperless-ngx container, Postgres, and Redis. Postgres stores metadata and records; Redis is the Celery broker for OCR, ingestion, and background tasks. The persistent volume at /usr/src/paperless/data holds PDFs, thumbnails, and the consume directory. Without it, documents disappear on redeploy. Set PAPERLESS_URL to your public HTTPS domain so CSRF and share links work.

Deployment Dependencies for Managed Paperless-ngx Service (Document Management)

Postgres stores metadata, tags, correspondents, types, custom fields, and users. Set PAPERLESS_DBENGINE=postgresql plus PAPERLESS_DBHOST, PAPERLESS_DBPORT, PAPERLESS_DBNAME, PAPERLESS_DBUSER, and PAPERLESS_DBPASS. Redis uses PAPERLESS_REDIS for Celery queues. The volume at /usr/src/paperless/data holds documents, scans, thumbnails, and consume directory. Read PAPERLESS_ADMIN_PASSWORD from Railway variables after deploy.

Implementation Details for Paperless-ngx (Using Paperless-ngx official docker image)

The template uses ghcr.io/paperless-ngx/paperless-ngx:3.3.0, exposing port 8000. Volume: /usr/src/paperless/data. Env: PAPERLESS_ADMIN_USER=admin, PAPERLESS_ADMIN_PASSWORD (generated), PAPERLESS_ADMIN_MAIL, PAPERLESS_URL (public HTTPS for CSRF and share links), PAPERLESS_DBENGINE=postgresql, Postgres connection vars, PAPERLESS_REDIS, PAPERLESS_OCR_LANGUAGE=eng, PAPERLESS_TIME_ZONE=UTC. Secrets use ${{secret()}}. v3 notes: Tantivy replaced Whoosh, document file versions, share link bundles, optional Paperless AI via PAPERLESS_AI_ENABLED with OpenAI or Ollama, Azure AI remote OCR, encryption removed, API v1 dropped.

How does Paperless-ngx compare against other document management platforms

Paperless-ngx vs Mayan EDMS

  • License: Paperless-ngx GPL-3.0; Mayan GPL-2.0.
  • Complexity: Paperless-ngx focuses on scan, OCR, tag, retrieve. Mayan is heavier enterprise EDMS with workflows and checkouts.
  • Search: Paperless-ngx uses Tantivy fuzzy search; Mayan has more metadata fields.
  • Best fit: Paperless-ngx for personal/small team; Mayan for enterprise records management.

Paperless-ngx vs Docspell

  • Language: Paperless-ngx is Python/Django; Docspell is Scala.
  • Automation: Docspell is more automation-oriented; Paperless-ngx has workflows and ML auto-tagging with a simpler UI.
  • Community: Paperless-ngx has larger community and more mobile apps.
  • License: Paperless-ngx GPL-3.0; Docspell AGPL-3.0.

Paperless-ngx vs Papermerge

  • UI model: Paperless-ngx uses tags/metadata; Papermerge is folder-centric.
  • OCR: Both OCR scans with Tesseract; Paperless-ngx adds PDF/A archive copies, mail fetching, and v3 file versions.
  • License: Paperless-ngx GPL-3.0; Papermerge Apache 2.0.
  • Best fit: Choose Papermerge for folders; Paperless-ngx for search.

Paperless-ngx vs Evernote

  • Cost: Paperless-ngx free/self hosted; Evernote Personal about $14.99/mo.
  • Data control: Paperless-ngx on your infrastructure; Evernote closed SaaS.
  • Features: Evernote is note app with OCR search; Paperless-ngx is a full DMS with workflows, mail fetching, permissions.
  • Search: Paperless-ngx v3 Tantivy designed for document text.

How to use Paperless-ngx (the OSS document management system)?

Open your public URL, log in with admin credentials from Railway variables. Upload PDFs or images via web UI, mobile app, or API. The consume folder on Railway's volume isn't reachable from a home scanner, so use web upload, mobile apps, or mail fetching. Paperless-ngx OCRs, extracts text, and applies tags/correspondents by rules or ML. Create saved views, custom fields, storage paths, and workflows.

How to self host Paperless-ngx on other VPS Services (Paperless-ngx self hosting guide)

The official docs recommend Docker Compose. Here's the condensed path.

Clone the Repository

Clone https://github.com/paperless-ngx/paperless-ngx or just download the Postgres compose file and docker-compose.env from docker/compose/ in the repo. The docs also ship an interactive install script.

Install Dependencies

Install Docker Engine and Compose plugin. On Debian/Ubuntu, use the official script or apt. Add your user to docker group. No Python or Node needed on host.

Configure Environment Variables

Edit docker-compose.env. Set PAPERLESS_SECRET_KEY (use openssl rand -base64 48), PAPERLESS_ADMIN_USER, PAPERLESS_ADMIN_PASSWORD, PAPERLESS_URL (HTTPS domain), PAPERLESS_TIME_ZONE, and PAPERLESS_OCR_LANGUAGE. The compose file already wires Postgres and Redis.

Start the Paperless-ngx Application

Run docker compose up -d. Paperless-ngx starts on port 8000. Put Caddy or Nginx in front with HTTPS, then log in at the public URL.

Official Pricing of Paperless-ngx (Paperless-ngx pricing)

Paperless-ngx is free, GPL-3.0 software. There is no official paid cloud, enterprise tier, or license fee. Some third parties offer managed hosting, but prices vary. This Railway template is self hosted; you pay only Railway resources. The software itself costs nothing.

Paperless-ngx cloud vs self hosted comparison (Pricing, features, costs, and more)

Monthly cost of self hosting Paperless-ngx on Railway

A small personal archive usually costs $5-15/mo on Railway, depending on Postgres, Redis, and volume size. The free trial gives $5. Volume grows with documents, since each one keeps an original plus an archived PDF/A copy and a thumbnail. Large OCR batches may need higher CPU, but base setup works for typical home use.

System Requirements for Hosting Paperless-ngx on a VPS

Paperless-ngx runs on a Raspberry Pi, but OCR is slow on weak CPUs. Allocate at least 2 GB RAM for comfort; more helps with large batches or Paperless AI. Disk depends on document count and PDF/A copies, so start modest and grow. On Railway, adjust volume size and scale vertically if OCR queues pile up.

Frequently Asked Questions (FAQs)

Does Paperless-ngx v3 still support the old API?

No. 3.0 removed API v1 compatibility and dropped API versions below 9. Older scripts and apps that pin an old version header need updating; token auth still works.

Can I use Tika and Gotenberg with the Railway template?

This template doesn't include them. Tika and Gotenberg add Office doc and email parsing. You can add them as separate Railway services if needed.

How do I get documents into Paperless-ngx if the consume folder is not reachable?

Use web upload, mobile app, API, or mail fetching with IMAP rules. The Railway volume isn't a scanner network share, but you can upload from a computer or phone.

Is Paperless AI required for OCR?

No. Tesseract via OCRmyPDF works without AI. Paperless AI is optional, using an external LLM backend like OpenAI or Ollama for summarization or metadata suggestions. Enable with PAPERLESS_AI_ENABLED.

What changed in Paperless-ngx v3 compared to v2?

Tantivy replaced Whoosh, document file versions and share bundles added, Paperless AI optional, Azure AI remote OCR available, encryption removed, API v1 dropped. Current release 3.3.0.

Do I need Postgres on Railway, or can I use SQLite?

The template uses Postgres because it performs better for concurrent users and larger archives. SQLite is supported but not recommended for production or multi-user. Stick with Postgres.


Template Content

More templates in this category

View Template
NEW
TimescaleDB
A PostgreSQL-based time-series database for analytics on Railway.

Rakit
1
View Template
Garage S3 Storage
Ultra-light S3 server: fast, open-source, plug-and-play.

PROJETOS
8
View Template
NEW
EMQX | (Just Updated) MQTT Broker for IoT, Dashboard Included, Data Survives Redeploys
MQTT broker for IoT. Dashboard on, data on a volume, public MQTT port

SuperSlowSloth
0