This set of scripts is for a multistage build that creates a alpine container that runs xcaddy to create a caddy binary with any plugins you want inside the container at build time!
This is intended to simplify the caddy setup process IF you want caddy with multiple plugins to run containerized and not on host baremetal.
- Move all files into target directory
- Specify all the plugins you want in the DOCKERFILE
- configure caddyfile and specify path to caddyfile in the COMPOSE.yaml
- rename the caddy.conf file to .env !! IMPORTANT !! make sure this is in the same root path as your compose file
- Add any api keys, secrets and passwords to the .env file
- Run the compose file with podman-compose or docker compose!
- Your caddy container with plugins will autostart with the contianer :D
Credit to the Caddyserver contributors and for building great server tools like
and
!
GPT-5 is garbage and I cant afford claude, I had to actually read docs this time... Claude did most of this though.