Deployment
This page explains how vaultsuite.dev deploys and manages your CryptPad instance. Understanding the architecture helps you see why we can offer dedicated instances at such low prices.
Infrastructure overview
VaultSuite runs on Fly.io, a global application platform. All customer instances are deployed in the Amsterdam (AMS) region to ensure EU data residency.
The platform consists of:
- Edge proxy: routes traffic to the correct instance, handles TLS, enforces suspension
- Control plane: manages instance lifecycle, billing, backups
- Customer instances: one Fly app per customer, running CryptPad (and optionally OnlyOffice)
- Database: Neon Postgres for control-plane data (accounts, billing, instance metadata)
Per-tenant isolation
Each customer gets their own Fly app. This means:
- Separate container (no shared tenancy at the OS level)
- Separate volume (your data is on its own persistent disk)
- Separate network (instances can't talk to each other)
This is stronger isolation than typical multi-tenant SaaS, where all customers share the same application server and database.
Scale-to-zero
Lite and Default tiers use Fly.io's scale-to-zero feature: when your instance is idle (no active users), the container is stopped. When you access your instance again, Fly wakes it up in ~5 seconds.
The edge proxy handles the wake-up transparently: when a request arrives for a stopped instance, the proxy sends a wake signal, waits for the instance to be ready, then forwards the request. You don't need to do anything — it just works.
The Team tier is always-on: the container never stops, so there's no cold-start delay. This is ideal for teams that need instant access.
OnlyOffice deployment
For Default and Team tiers, OnlyOffice runs in the same container as
CryptPad. The documentserver listens on localhost:3000 and
CryptPad connects to it internally.
OnlyOffice uses scale-to-zero independently: when no documents are open for a period of time, the documentserver process is idle. When you open a document, it wakes up in ~5 seconds. This keeps costs down while preserving the ability to edit rich documents.
Backups
Every instance volume is snapshotted daily by the platform's scheduled snapshot system. Snapshots are encrypted at rest, kept for 14 days, and pruned automatically. Need a restore? Contact support and we roll your instance back to any snapshot in the window. Off-platform backup copies are on our roadmap.
TLS and certificates
All connections use TLS. Your instance's
*.vaultsuite.dev hostname is covered by managed certificates
that renew automatically — there is nothing for you to configure.
We enforce HSTS (HTTP Strict Transport Security) to prevent downgrade attacks.
DNS and routing
The edge proxy receives all tenant traffic and routes it to the correct
instance based on the Host header. Your instance is only ever
reachable over HTTPS at its own hostname.
Monitoring
We watch the health of the platform:
- Every deployment is verified end-to-end — an instance isn't marked live until it answers on its public URL
- Instance and proxy health (is the container running and responding?)
- Billing webhook delivery (did Stripe events arrive and process?)
In the event of an outage, we post updates by email and on our support channels.
Updates and maintenance
When CryptPad releases a new version, we:
- Test the update in our canary instance (a dogfood instance we run ourselves)
- If tests pass, schedule the update for all customer instances
- Update instances one at a time to minimize blast radius
- Monitor for issues after each update
Updates typically take <1 minute per instance. We schedule them during low-traffic periods (early morning EU time) when possible.
Cost control
We implement several cost controls to keep prices low:
- Scale-to-zero: idle instances don't consume compute
- Idle reaper: websockets with no activity for N minutes are terminated, allowing the instance to sleep
- Bandwidth metering: soft caps prevent abuse
- Single region: everything in AMS avoids cross-region transfer fees
These controls let us offer dedicated instances at prices competitive with shared hosting.