Run the same PDFUA.io engine — designer, API, batch worker, and validator — on your own Linux host with Docker Compose. Nothing phones home, and your document data never leaves your network.
Enterprise · or see what an install looks like
Not a cut-down "local renderer". The on-premise appliance is the product you'd use in our cloud, packaged to run where your data residency rules say it must.
Visual designer, REST API, background worker for batches, and the PDF validator — one appliance, five services, a single host. Every document gets the same PDF/UA-1 structure as in the cloud.
Designer · API · Worker · ValidatorImages arrive as a tarball you docker load — no registry, no internet. The application applies its own database migrations on first start. Plan about 30 minutes for a first install.
Your license is a signed token — seat count and term — verified against a key built into the image. No activation server, no phone-home. Apply or renew it in Settings, no restart needed.
Signed token · Seats · TermAn expired license switches the instance to read-only: people still sign in and see everything; creating and generating pause until you install the renewal. No data is touched.
Read-only degradePostgreSQL and document storage live on your host — or point the appliance at your own managed PostgreSQL. Backups are a SQL dump and a volume tarball; upgrades are a new image load.
PostgreSQL · Your retentionOne origin behind a web front with your TLS certificate — an internal CA or self-signed certificate is fine on an isolated network.
TLS · Internal CAA Linux host with Docker Engine 24+ and Compose v2. 4 vCPU, 8 GB RAM and 40 GB of disk to start — PDF rendering is CPU-bound, so size up for heavy volume. Our June 2026 baseline rendered under 10 ms a page, about 100 pages a second per core: on the 4 vCPU starting size that is roughly 24,000 pages a minute, 1.4 million an hour, and an 8-core host doubles it. Your hardware sets the exact rate.
Load the images, generate your secrets, set the public HTTPS address, and drop your certificate next to the compose file.
docker compose up -d. The database initialises and migrations apply themselves; the built-in tool creates your first administrator and organization.
Paste the token in Settings → License. The card shows seats used and days remaining. Invite your team and generate.
# 1. Images, delivered with your bundle gunzip -c pdfua-images.tar.gz | docker load # 2. Secrets, hostname, certificate cp .env.example .env # PUBLIC_URL, secrets, image tags cp your.crt certs/tls.crt cp your.key certs/tls.key # 3. Start — migrations run automatically docker compose up -d docker compose run --rm -it backend /app/bin/create_admin # 4. License: Settings → License → paste → Apply ✓ license active · 25 seats · 365 days remaining
| Edition | What runs | Best for |
|---|---|---|
| Full appliance | Designer, generation API, batch worker, validator — five services on one host | Generating accessible documents inside your network |
| Validator monitoring | Validator web app with history, groups, schedules, and domain scans | Auditing and monitoring PDFs you already publish |
| Validator API | One stateless container: POST a PDF, get the report back — nothing stored | Adding an accessibility gate to your own pipeline |
Custom SLA, data processing agreement (PIPEDA / GDPR), dedicated onboarding, and direct engineering access. See the cloud plans on the pricing page.
No. Images install from a tarball and the license is verified offline. Only features that fetch from the web by definition — validating a PDF by URL or scanning a public domain — need outbound access; validating uploaded files works fully offline.
The instance becomes read-only: everyone can still sign in and view existing templates and documents, while creating, generating, and inviting pause. Installing the renewal token restores full access immediately — no restart, nothing lost.
Yes. The bundle ships its own database container, and can instead point at a managed or external PostgreSQL your team already operates and backs up.
Each release is a tarball we provide. Load it on the host and restart the stack; database migrations apply automatically on start.
Yes — the same generation engine and the same accessible output. On-premise license management lives in the app's Settings, since there is no vendor console inside your network.
Tell us where it needs to run. On-premise deployments are onboarded directly with the engineering team — priority goes to teams with active compliance deadlines.
No spam. No sales calls unless you ask for one.
You're on the list. Three quick questions help us prioritise your access:
What's your industry?
How many pages do you generate per month?
What's your compliance timeline?
You're on the list.
We'll be in touch shortly.