Install Stirling PDF in 60 Seconds
Stirling PDF is an all-in-one PDF toolkit - merge, split, rotate, convert, OCR, and sign - that runs entirely on your own server so your documents never touch a third-party SaaS. InstaPods deploys it in one click with HTTPS and persistent storage already wired up.
The usual way to self-host Stirling PDF
- Provision a VPS, install a JDK, and figure out the right heap size - Stirling PDF is a Java app launched as `java -Xmx512m -jar Stirling-PDF.jar`, so too little RAM and large-file OCR jobs get OOM-killed mid-conversion.
- Run it on port 8080 and then bolt on the optional toolchain by hand: install LibreOffice for Office-to-PDF conversion, Tesseract language packs for OCR, Ghostscript and qpdf for compression and repair. Miss one and half the buttons in the UI silently 500.
- Put nginx or Caddy in front for a reverse proxy, then chase a Let's Encrypt cert and auto-renewal so you are not uploading sensitive documents over plain HTTP.
- Mount a real volume for the configs and custom settings.yml, or every redeploy wipes your pipeline definitions and trusted-cert setup back to defaults.
- Watch the GitHub releases and re-pull the JAR by hand every few weeks to stay current on security and feature fixes - manual `systemctl stop`, download, `systemctl start` each time.
That is a full afternoon of JVM tuning, system-package wrangling, and TLS plumbing before you have merged a single PDF. InstaPods does all of it in one click and keeps the JAR updated for you.
Or install it in one click
What you get
Recommended plan for Stirling PDF
- 2 vCPU
- 2 GB RAM
- 25 GB storage
- HTTPS included
- Custom domain support
- SSH & web terminal access
Stirling PDF requirements
Resource requirements
Stirling PDF needs the Build plan or higher. It is a JVM app started with a 512MB heap (`-Xmx512m`), and PDF jobs - especially OCR and Office conversions that spin up Tesseract, Ghostscript, and LibreOffice - are memory- and CPU-hungry. The Build plan gives it the headroom to process real documents without OOM-killing the conversion. For heavy daily batch work, size up to Grow.
Config and settings
No mandatory environment variables - it boots and serves a working PDF UI on port 8080 out of the box, and InstaPods maps that to HTTPS automatically. Advanced behavior (login/auth, custom pipelines, trusted certs for signing) is driven by Stirling's own settings.yml inside the pod, which you can edit over the web terminal or file browser. There are no API keys or secrets to wire up to get started.
Data persistence and custom domain
Your settings.yml, custom pipeline definitions, and any uploaded fonts or certs live on the pod's persistent disk and survive restarts, redeploys, and JAR updates - nothing resets to defaults. Point a custom domain at the pod from the dashboard and the TLS cert is issued and renewed for you. Processed PDFs are handled in-session by design, so nothing leaks to a third party.
Stirling PDF install FAQ
Why self-host Stirling PDF instead of using an online PDF site?
Free online PDF tools upload your documents to someone else's server, and many sell or retain them. Self-hosting Stirling PDF means every merge, split, OCR, and conversion happens on your own private server that only you can reach. On InstaPods it deploys in one click with HTTPS, so you get the privacy without provisioning a VPS, installing a JDK, or configuring nginx by hand.
What plan do I need to run Stirling PDF?
Stirling PDF requires the Build plan or higher. It is a Java application that runs with a 512MB heap, and tasks like OCR and Office-document conversion pull in Tesseract, Ghostscript, and LibreOffice, which need real CPU and memory. Build gives it enough room to process actual documents; for heavy daily batches, move up to Grow.
Do I need to set any environment variables or API keys?
No. Stirling PDF has no required environment variables - it boots straight into a working PDF UI on port 8080, which InstaPods exposes over HTTPS automatically. If you want login/auth, custom processing pipelines, or signing certs, you configure those in Stirling's own settings.yml inside the pod via the web terminal. There are no third-party keys to obtain.
Will my settings and pipelines survive a restart or update?
Yes. Your settings.yml, custom pipeline definitions, uploaded fonts, and trusted certs live on the pod's persistent disk, so they survive restarts, redeploys, and JAR updates. InstaPods also tracks new Stirling PDF GitHub releases and updates the JAR for you, so your configuration carries over to each new version instead of resetting to defaults.
Can I use my own domain and is the connection encrypted?
Yes to both. Every pod gets a free HTTPS subdomain like my-stirling-pdf.instapods.app the moment it deploys, and you can attach a custom domain from the dashboard - the TLS certificate is issued and auto-renewed for you. Since you are uploading documents, the encrypted connection matters, and it is on by default with no manual Let's Encrypt setup.
Install Stirling PDF in 60 seconds
One click. Real server. HTTPS included. No Docker, no nginx, no DevOps degree required.
Install Stirling PDF