Images and releases
Authentication migration — breaking change
Warning
Existing automation must be reviewed before upgrading. Authentication is mandatory; unauthenticated management access is no longer supported. Legacy JWT authentication is removed: Bearer JWTs and
?token=authentication are no longer accepted. POST, PUT, PATCH and DELETE requests require a management session and itsX-CSRF-Token(or a pre-login context for authentication endpoints); origin checks also remain active.Integrations must replace legacy JWTs with scoped, read-only API tokens created in the UI. These allow status/metrics reads for selected Caddy instances only; write-capable automation still requires a browser-style session and CSRF context. Coordinate the upgrade with existing scripts and integrations.
Restrict access until administrator enrollment is complete. When neither stored nor legacy credentials exist, the first person reaching setup can claim administrator access. This also applies to upgrades from previously unauthenticated installations, even when settings and labels already exist. The backend emits a startup warning in this state.
Docker Hub
| Image | Link |
|---|---|
| Frontend | zackwag/caddy-ui-frontend |
| Backend | zackwag/caddy-ui-backend |
Image Tags
| Tag | Description |
|---|---|
latest | Most recent stable release |
beta | Pre-release build of a specific branch or pull request, published manually for testing |
edge | Most recent build of any kind: every push to main and every beta build. May contain unreleased or unmerged changes |
See GitHub releases for versioned image tags and release notes.
Changelog
Releases from v1.18 onward are generated by release-please from Conventional Commit PR titles — see CHANGELOG.md. The table below covers earlier releases.
| Version | Description |
|---|---|
v1.17 | Report the running caddy-ui version via GET /api/version and the sidebar |
v1.16 | Real Caddyfile-grammar syntax highlighting (directives, matchers, placeholders, env vars) in place of a generic nginx-mode approximation |
v1.13 | import directive support in Caddyfile validation, reload, and sort; force-save option; validation timeout |
v1.12 | Push notifications via ntfy, Discord, Slack, Pushover, or custom webhook; automated release workflow with Docker Hub sync |
v1.11 | Caddy binary bundled, upstream pool health checks, CA download via admin API, simplified TLS cert deletion |
v1.10.1 | Caddy /adapt API validation, Docker socket removal |
v1.10 | React Router navigation, RESTful API audit, Homepage widget, enriched status endpoint |
v1.9 | Dark/light theme, log export, root CA download, env var support in Caddyfile |
v1.8 | Metrics tab, upstream uptime tracking |
v1.7 | JWT auth, Caddy process info, metrics toggle, public metrics endpoint |
v1.6 | Edit routes, route notes, Caddyfile syntax highlighting |
v1.5 | Caddyfile version history, log search and level filters |
v1.4 | Dashboard health summary, route search/filter, Caddyfile backup/restore |
v1.3 | Upstream healthchecks, clickable domain/upstream links |
v1.2 | TLS certificate tab, orphaned cert cleanup, mobile layout |
v1.1 | Mobile responsive layout, hamburger menu |
v1.0 | Initial release |