Appearance
Self-hosting Sulu
Sulu can be self-hosted in two ways:
Licensed on-premise — pull pre-built signed images from GHCR using a token issued by your account team. This is the recommended production path — see Installing Sulu (on-premise).
Build from source — clone the public repository, build images locally, and run via Docker Compose. Suitable for evaluation only; production support requires a license.
Comparison
| Licensed on-premise | Build from source | |
|---|---|---|
| Images | Pre-built, signed, SBOMed | Built locally on every deploy |
| TLS | Caddy / nginx (your choice) | Same |
| Support | Per your contract | Best-effort community via repo issues |
| Updates | Pull new tag from GHCR | Pull repo + rebuild |
| Helm chart | OCI-published, versioned | Build chart locally |
Quick paths
- I want to deploy on Kubernetes → Kubernetes deployment guide
- I want to deploy via Docker Compose → Installing Sulu (on-premise)
- I'm evaluating — clone the repository and follow the build-from-source instructions in the repo README. Suitable for evaluation only; production support requires a license.
Optional add-ons
- Backup & restore — GPG-encrypted nightly bundles to S3-compatible storage
- Observability — bundled Prometheus + Grafana + Loki stack
- Authentication — LDAP/AD delegated auth + 2FA TOTP
What you'll need
- A Linux host running Docker 26+ or a Kubernetes 1.27+ cluster
- A public DNS name for the UI (and optionally separate hostnames for API, landing, and docs sites)
- A TLS termination layer — Caddy works out of the box; nginx, Traefik, and HAProxy are all fine
- An S3-compatible object store for attachments (MinIO is bundled and works without external setup)
- An SMTP relay (Resend, SES, your corporate Postfix — any standard SMTP)
Resources
- Sulu repository
- Reporter SDKs (Apache-2.0, separate repo: Java JUnit 5/TestNG, Python pytest, JS Playwright, .NET xUnit)
- For pre-sales questions: contact your Sulu account team.