Caddy

App in the BluixApps catalog

What it is

Caddy is a modern HTTP/2 + HTTP/3 web server with automatic HTTPS — Let's Encrypt certificate provisioning + renewal built-in, no manual setup. Simple Caddyfile config (vs nginx's terse syntax), Go-based single binary. Designed for the "set and forget" web server experience.

For developers who don't want to maintain certbot cron jobs or fight with nginx config files, Caddy is the answer.

What it's for

  • Reverse proxy — front-load app servers with auto-SSL
  • Static site hosting — serve docs sites, marketing pages, SPAs
  • HTTPS automation — Let's Encrypt + ZeroSSL with zero config
  • HTTP/3 + QUIC — modern protocol support out of the box
  • Multi-domain hosting — Caddyfile vhost-style configs

Who it's for

  • Developers preferring simple config over nginx complexity
  • Indie projects hosting their own sites without certbot wrangling
  • Internal tools needing reverse proxy with auto-SSL
  • DevOps teams managing dozens of subdomains without per-cert hassle
  • Privacy-conscious self-hosters wanting HTTPS-everywhere by default

Why teams pick Caddy over alternatives

  • Auto HTTPS — built-in ACME client; renewals handled automatically
  • Apache 2.0 — fully open, commercial use unrestricted
  • Simple config — Caddyfile is readable; nginx requires expertise
  • Single binary — no module dependency hell
  • HTTP/3 native — QUIC support out of the box
  • JSON config API — programmatic configuration via REST

Integrations

  • ACME providers — Let's Encrypt, ZeroSSL, custom CA
  • DNS providers — DNS-01 challenge for wildcard certs (Cloudflare, Route 53, custom)
  • Backends — proxy to any HTTP service; load balance between multiples
  • Authentication — built-in basic auth, JWT validation, integration with Authelia
  • Logging — JSON-structured logs, OpenTelemetry tracing
  • Config sources — Caddyfile, JSON API, environment variables
  • Plugins — Go-based plugin system for extensions

Notable users & community

  • 60k+ GitHub stars
  • Used by Stripe (some internal tools), many SaaS startups, indie devs
  • Active forum, frequent releases
  • Backed by ZeroSSL and community; commercial enterprise offering
  • Strong reputation in self-hosting circles

Tips & operations

  • Use Caddyfile for simple, JSON for programmatic — start with Caddyfile, switch to JSON if dynamic
  • DNS-01 for wildcards — HTTP-01 doesn't support wildcard certs; need DNS provider creds
  • Mount persistent ACME storage/data/caddy holds certs + keys; mount volume so renewals persist
  • Rate-limit ACME — Let's Encrypt has rate limits per domain; test in staging first
  • Health checks for backendshealth_uri directive avoids forwarding to unhealthy upstreams
  • Reload config without downtimecaddy reload graceful reload; faster than nginx -s reload

What we ship in BluixApps

  • Docker compose: Caddy + persistent ACME storage
  • Pinned caddy:2.8 (release-tagged)
  • HTTPS via Let's Encrypt automatic on first request
  • Caddyfile pre-configured for reverse proxy pattern
  • Optional DNS-01 challenge via env config
  • Persistent volume for ACME certs + JSON config
  • Backup hook covers /data/caddy (cert storage)
Read this app's deep dive on bluix.app ↗

Get this app — pick a BluixApps plan

Same catalog. Scaling tenant isolation, white-label and support tier.

TierTenantsCatalogSupportWhite-labelMonthly
Stacks119 curated stacksStandard$19/moDetailDeploy
Starter10Full catalogStandard+$15–25/mo$49/moDetailDeploy
Pro25Full catalogPriority bugfix+$15–25/mo$149/moDetailDeploy
Growth100Full catalogPriority bugfix+$15–25/mo$349/moDetailDeploy
Scale500Full catalog7-day window+$15–25/mo$799/moDetailDeploy
EnterpriseUnlimitedFull catalogPriority 7-dayBundled$1,499/moDetailDeploy

Powered by WHMCompleteSolution