jufi.dev

project

caddyku

CLI that manages one shared Caddy reverse proxy for all the Docker projects on a VPS.

GoCobraDockerCaddy
github.com/jufianto/caddyku

Running several Docker Compose projects on one VPS means every new domain is a hand-edit to a shared Caddyfile — easy to typo, annoying to keep consistent. caddyku makes domain registration a one-line command.

Each app declares its domains in a caddyku.yaml; caddyku merges them into marker-managed blocks in the shared Caddyfile and hot-reloads Caddy. Every mutating command validates the new config inside the container first and rolls back if it fails, and supports --dry-run to preview the diff. caddyku init-app patches an app’s compose file to join the shared network, and caddyku status health-checks the proxy, the network, and every upstream.

HTTPS is Caddy’s native Let’s Encrypt automation — caddyku adds nothing to lose. This site (jufi.dev) is served through it.

← all projects