---
title: "Deploy Paperless-ngx Mobile"
description: "Scan, upload and search documents from your phone"
category: "Storage"
url: https://railway.com/deploy/deploy-paperless-ngx-mobile-app-access
---

# Deploy Paperless-ngx Mobile

Scan, upload and search documents from your phone

**[Deploy Paperless-ngx Mobile on Railway](https://railway.com/template/deploy-paperless-ngx-mobile-app-access)**

Machine-readable deploy manifest (JSON, validated by TemplateCI): https://railway.com/deploy/deploy-paperless-ngx-mobile-app-access/manifest.json

- **Creator:** onepush
- **Category:** Storage

## Template content

### paperless-ngx

- **Image:** ghcr.io/paperless-ngx/paperless-ngx:3.3.0
- **Public domain:** Yes

### Postgres https://devicons.railway.app/i/postgresql.svg

- **Image:** ghcr.io/railwayapp-templates/postgres-ssl:18

### Redis https://cdn.sanity.io/images/sy1jschh/production/0ce0bfdcfbdbf69662b1116671f97c2dd788b655-157x157.svg

- **Image:** redis:8.2
- **Start command:** `/bin/sh -c "rm -rf $RAILWAY_VOLUME_MOUNT_PATH/lost+found/ && exec docker-entrypoint.sh redis-server --requirepass $REDIS_PASSWORD --save 60 1 --dir $RAILWAY_VOLUME_MOUNT_PATH"`

## Documentation

# Deploy and Host self hosted Paperless-ngx Mobile (Open-Source Document Archive for Phone Scanning) on Railway

This template deploys Paperless-ngx with Postgres and Redis for people who scan letters and receipts on their phone.

## About Hosting Paperless-ngx Mobile open-source software on Railway (self hosted Paperless-ngx from your phone template)

Paperless-ngx is GPL-3.0 software, and this template runs it in your own Railway project, so documents, OCR text, and the search index stay in your Postgres database and volume.

## Why Deploy Paperless-ngx Mobile, the Adobe Scan alternative on Railway (Railway Free Trial)

Adobe Scan is free and fast, but your scans sit in Adobe's cloud. Railway's $5 trial covers a few weeks of testing, and storage costs grow with your archive.

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 Mobile 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 Mobile self hosting

A VPS means you run the server, Postgres, Redis and HTTPS yourself, while Railway deploys them from one template with a public HTTPS domain.

| Provider | What You Get with Railway | What You Get with the Other Provider |
| --- | --- | --- |
| DigitalOcean | Linked Paperless-ngx, Postgres and Redis with generated secrets. | A Droplet you size yourself, but you install Docker, TLS and updates. |
| AWS | The same services and a public URL, with no IAM or security groups first. | Deep networking control with many more moving parts to learn. |
| Hetzner | Managed deploy with persistent volumes for data and media. | Low cost per gigabyte of RAM and disk, but you own every update. |

Pick the option that matches how much server work you want.

## Common Use Cases for hosted Paperless-ngx Mobile

- **Scanning receipts at the till:** Snap a receipt with your phone camera or a scanner app and upload it to your Paperless-ngx instance on Railway. OCR makes the merchant and total searchable later.
- **Uploading letters from the share sheet:** Send a PDF from any scanner app to your server with a community Android or iOS app. OCR, tagging and matching rules run automatically after upload.
- **Searching your archive on the go:** Open your Railway domain in a phone browser and search for a word from last spring's letter. The responsive web UI is good enough to find and open the file.
- **Tagging and filing from the phone:** Add tags, a correspondent or a document type while you wait in line. Filing on the spot means no pile of unsorted scans.
- **Family members uploading to one archive:** Give your partner or parents their own accounts with the right permissions. Everyone uploads bills and letters into the same archive, and you can see who added what.

## Dependencies for Paperless-ngx Mobile Docker hosted on Railway

This template runs three services: the paperless-ngx web app, a Postgres database for metadata, and a Redis instance as the Celery broker for background OCR.

### Deployment Dependencies for Managed Paperless-ngx Mobile Service (Document Archive)

- **paperless-ngx:** image ghcr.io/paperless-ngx/paperless-ngx:3.3.0, public port 8000, with a volume at /usr/src/paperless/data for data, media, and the consume folder.
- **Postgres:** the main database, wired through PAPERLESS_DBENGINE=postgresql and the DBHOST, DBPORT, DBNAME, DBUSER, and DBPASS variables.
- **Redis:** the Celery broker, wired through PAPERLESS_REDIS.
- **Public HTTPS domain:** lets your phone reach the archive off your home network, and goes in PAPERLESS_URL because CSRF checks depend on it.

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

Set PAPERLESS_SECRET_KEY (generated by Railway), PAPERLESS_ADMIN_USER to admin, PAPERLESS_ADMIN_PASSWORD (read it from the Railway variables tab), and PAPERLESS_ADMIN_MAIL.

## How does Paperless-ngx Mobile compare against other ways to scan documents from a phone

### Paperless-ngx vs Adobe Scan (Adobe Scan Alternative)

- **Where Storage Lives:** Adobe Scan saves files to Adobe Document Cloud. Paperless-ngx keeps PDFs and OCR text on your own Railway volume.
- **Phone Scanning:** Adobe Scan has a polished free scanner built in. Paperless-ngx has none, so you pair it with a community app like QuickScan.
- **Honest Trade-off:** Adobe Scan wins on polish and zero setup. You give that up for ownership of the archive.

### Paperless-ngx vs Microsoft Lens (Microsoft Lens Alternative)

- **Where Files Go:** Lens sends scans to OneDrive or Office. Paperless-ngx sends them to a server you run.
- **Filing Model:** Lens hands files off. Paperless-ngx stores, OCRs, tags and matches each file after upload.
- **Honest Trade-off:** Lens is simpler and more reliable for a quick scan. Paperless-ngx is better once you want a searchable archive you own.

### Paperless-ngx vs Evernote (Evernote Alternative)

- **Product Type:** Evernote is a notes app that also scans and OCRs. Paperless-ngx is a document management system built around files.
- **Data Ownership:** Evernote is closed SaaS with paid tiers for scanning. Paperless-ngx is GPL-3.0 and runs on your own infrastructure.
- **Honest Trade-off:** Evernote wins if you want notes and documents in one polished app. Paperless-ngx wins if you mainly archive paperwork.

### Paperless-ngx vs Google Drive scanning (Google Drive Scan Alternative)

- **Scan Flow:** Drive's scan button saves a PDF straight to Drive with OCR search. Paperless-ngx needs an upload step to your server first.
- **Storage and Privacy:** Drive keeps files in Google's cloud. Paperless-ngx keeps them on your Railway volume.
- **Honest Trade-off:** Drive is the easier default for casual scanning. Paperless-ngx asks more of you but gives a much stronger archive.

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

Do these steps on your first day, after the deploy finishes.

1. Open https://your-domain on your phone browser and log in as the admin user.
2. Enable two-factor authentication in My Profile with a TOTP app such as Google Authenticator.
3. If the app supports token login, create an API token in My Profile.
4. Install a community app from the Paperless-ngx wiki Related Projects list. These are community projects, not official, and their features differ.
5. Enter https://your-domain as the server URL and sign in.
6. Scan or share a PDF to the server.
7. Wait a minute for OCR, then search for a word from the document to confirm it's indexed.

For scripts, upload with the token:

```
curl -H "Authorization: Token your-token" -F "document=@letter.pdf" https://your-domain/api/documents/post_document/
```

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

Running this on your own VPS works with the official Docker Compose setup. Replace your-domain with your own address.

### Clone the Repository

Clone the repository and move into the Compose directory.

```bash
git clone https://github.com/paperless-ngx/paperless-ngx.git
cd paperless-ngx/docker/compose
```

### Install Dependencies

Install Docker and the Compose plugin. Postgres, Redis and Paperless-ngx are pulled as images at startup.

```bash
sudo apt update && sudo apt install -y docker.io docker-compose-plugin
```

### Configure Environment Variables

Copy the example env file and set PAPERLESS_URL to your public HTTPS address, or CSRF checks will fail when you log in from a phone.

```
PAPERLESS_SECRET_KEY=change-this-to-a-long-random-string
PAPERLESS_URL=https://your-domain
PAPERLESS_ADMIN_USER=admin
PAPERLESS_ADMIN_PASSWORD=change-this-too
```

### Start the Paperless-ngx Mobile Application

Start the stack in the background and check the containers.

```bash
docker compose up -d
docker compose ps
```

Railway handles the database, Redis, HTTPS domain and document volumes for you, so none of these steps are needed there.

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

Paperless-ngx is free and open source under the GPL-3.0 license, and the project does not run an official paid cloud.

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

Paperless-ngx is free and GPL-3.0 licensed, and the project runs no official paid cloud.

### Monthly cost of self hosting Paperless-ngx Mobile on Railway

Railway usage for a small personal archive typically lands around $5-15 per month, and the volume holding your documents grows as you add scans.

### System Requirements for Hosting Paperless-ngx Mobile on a VPS

Paperless-ngx runs on a Raspberry Pi, but OCR is slow on weak CPUs, so treat that as a proof of concept.

## Frequently Asked Questions (FAQs)

### Is there an official Paperless-ngx mobile app?

No, the project does not publish one.

### Can I upload from any scanner app?

Yes, if the scanner app can share a PDF or image to another app.

### Should I use an API token or my password?

An API token is better for mobile apps and scripts because you can revoke it without changing your password.

### Is it safe to expose the server to the internet?

It can be, if you turn on two-factor authentication for every account before sharing the public HTTPS domain.

### Why does a document take a minute to appear?

Uploads are consumed asynchronously, so the server runs OCR, matching and any workflows after it receives the file. Large or multi-page scans take longer.

### Does the web UI work on a phone?

Yes, the web interface is responsive, so you can search, view, tag and upload from a mobile browser on your Railway HTTPS domain.


## Similar templates

- [RustFS | (Just Updated) S3 Object Store, Public URL and Keys Set](https://railway.com/deploy/rustfs-or-just-updated-s3-object-store-p) — S3-compatible object store, keys and public URL preset, volume kept
- [TimescaleDB](https://railway.com/deploy/timescaledb-railway-template) — A PostgreSQL-based time-series database for analytics on Railway.
- [Garage S3 Storage](https://railway.com/deploy/garage-s3-storage) — Ultra-light S3 server: fast, open-source, plug-and-play.

Open this page in a browser: https://railway.com/deploy/deploy-paperless-ngx-mobile-app-access
