Railway

Deploy Stirling PDF

Self-hosted PDF toolkit for conversion, editing, signing, and OCR.

Deploy Stirling PDF

Just deployed

/stirling-data

Deploy and Host Stirling PDF on Railway

Stirling PDF is a self-hosted, browser-based PDF toolkit for converting, editing, signing, redacting, organizing, compressing, and OCR-processing documents. It brings a broad set of document workflows into one interface while processing files on infrastructure you control instead of requiring a third-party PDF service.

About Hosting Stirling PDF

Hosting Stirling PDF requires one application container, a public HTTPS endpoint, and durable storage for configuration, users, custom files, pipelines, and logs. This template runs the immutable stirlingtools/stirling-pdf:2.14.2 image on its documented port 8080. Because Railway permits one volume per service, STIRLING_BASE_PATH places the related state tree beneath a single /stirling-data mount. Login is enabled and initial administrator credentials are generated per deployment, preventing the public endpoint from becoming an anonymous, resource-consuming PDF processor. Railway checks the unauthenticated /api/v1/info/status health endpoint while the application UI remains protected by login.

Common Use Cases

  • Converting office documents, images, and PDFs between supported formats
  • Editing, organizing, signing, redacting, compressing, and securing PDFs
  • Running OCR and repeatable PDF workflows without sending documents to a hosted processor

Dependencies for Stirling PDF Hosting

  • One persistent Railway volume mounted at /stirling-data
  • Sufficient CPU, memory, and storage for the document sizes and conversions you run

Deployment Dependencies

Implementation Details

  • Service: one Stirling PDF service using stirlingtools/stirling-pdf:2.14.2; Railway HTTPS targets the documented internal port 8080.
  • Authentication: SECURITY_ENABLELOGIN=true and password-only login are configured. Railway template functions generate the initial administrator username and password once for each deployment; no shared or source-project credential is included in this repository.
  • Persistent layout: Railway allows one volume per service, so STIRLING_BASE_PATH=/stirling-data keeps configs/, customFiles/, pipeline/, and logs/ together on the mounted volume. The embedded H2 user database and settings therefore survive redeploys.
  • Privacy: search indexing, PostHog, Scarf, and the global analytics toggle are disabled. The URL-to-PDF feature remains disabled because the v2.14.2 settings schema warns that it has known security issues for externally reachable instances.
  • Resource controls: the default locale is en-US, uploads are limited to 100MB, the balanced JVM profile is used, and LibreOffice conversion concurrency is limited to one session. Stirling PDF still performs CPU- and memory-intensive work; monitor Railway usage and adjust capacity deliberately.
  • Health: Railway checks /api/v1/info/status, the image's documented health endpoint. It remains reachable without authentication and returns a status of UP when ready.

First Login

  1. Deploy the template and open the generated Railway domain.
  2. Copy the generated initial administrator username and password from the deployed service's Railway variables; do not post or share them.
  3. Sign in at /login. The initial credentials create the administrator only when the persistent user database is empty.
  4. Store replacement credentials in a password manager and review Stirling PDF's in-app security settings before inviting other users.

Storage and Resource Notes

The volume retains configuration, the user database, custom branding and signatures, pipeline definitions, and application logs. OCR language packs included in the pinned image remain available, but /usr/share/tessdata is not separately persistent because Railway supports only one volume per service. Large documents and conversion tools such as LibreOffice, Tesseract, OCRmyPDF, Ghostscript, ImageMagick, and Calibre can consume substantial CPU, memory, temporary disk, and execution time even when login is enabled. Back up /stirling-data, monitor volume and compute usage, and do not expose credentials publicly.

Why Deploy Stirling PDF on Railway?

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 Stirling PDF 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.


This is a community deployment template and is not affiliated with or endorsed by Stirling Tools. Stirling PDF's name and logo belong to their respective owners.


Template Content

More templates in this category

View Template
Rocky Linux
[Jul'26] Hosted Rocky Linux 9 workspace with SSH and persistent storage. 🚀

codestorm
31
View Template
Foundry Virtual Tabletop
A Self-Hosted & Modern Roleplaying Platform

Lucas
71
View Template
Letta Code Remote
Run a Letta Code agent 24/7. No inbound ports, just deploy.

Letta
51