Self Hosting Setup
Choose your deployment shape, runtime mode, and connection strategy before installation.
Self hosting gives you full control over where Durabull runs, how it connects to Redis, and how your team authenticates.
This page helps you choose the right setup before you install.
Production and self-hosted Durabull collects anonymous/pseudonymous usage telemetry to understand
feature usage and improve the product. Configuring your own POSTHOG_KEY does not disable Durabull
telemetry, and Durabull does not provide a product-level telemetry opt-out. Your PostHog project
still receives the full PostHog browser analytics stream.
Prerequisites
- Redis instance(s) you want to manage
- Bun
1.3+(for source-based install and local development) - Optional: Docker (recommended for fastest first run)
- Optional: PostgreSQL (recommended for team deployments)
Choose Your Runtime Mode
Durabull behavior is controlled by two toggles:
DURABULL_AUTHLESSDURABULL_ENV_CONNECTIONS
And one persistence setting:
DATABASE_URL(set = PostgreSQL, unset = PGlite)
Recommended Defaults
| Scenario | Auth | Connections | Persistence |
|---|---|---|---|
| Local admin in trusted network | Authless | Env-driven | PGlite |
| Team deployment | Authenticated | DB-managed or Env-driven | PostgreSQL |
| Internet-facing production | Authenticated | Env-driven (most deterministic) | PostgreSQL |
Choose Your Installation Path
Path A: Docker Image (fastest)
Use this if you want a quick, reproducible self-hosted setup.
Continue to:
Path B: Source-based setup
Use this if you need contributor workflows, custom builds, or advanced integration.
Continue to:
Before You Go Live
- Review Environment Variables
- Apply Security and Hardening
- Keep Troubleshooting bookmarked