blumeops/docs/how-to/deployment/build-caddy-with-plugins.md
Erich Blume f46a04b902
All checks were successful
Build Container (Nix) / detect (push) Successful in 2s
Build Container / detect (push) Successful in 2s
Restructure docs: consolidate, recategorize, and extract
- Consolidate 4 Authentik Nix derivation docs into one card
  (authentik-nix-build-components.md)
- Merge build-grafana-container + build-grafana-sidecar into
  build-grafana-images.md
- Move agent-change-process from how-to/ to explanation/ (it's a
  methodology doc, not a task guide)
- Extract Caddy custom build section from reference card into
  how-to/deployment/build-caddy-with-plugins.md
- Move expose-service-publicly from how-to/ to tutorials/ (it's a
  comprehensive walkthrough, not a quick task reference)
- Update all wiki-link references across affected docs

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 19:55:59 -07:00

737 B

title modified last-reviewed tags
Build Caddy with Plugins 2026-03-15 2026-03-15
how-to
caddy
networking

Build Caddy with Plugins

Caddy is built from source using xcaddy with two plugins:

  • github.com/caddy-dns/gandi — ACME DNS-01 challenges via Gandi API
  • github.com/mholt/caddy-l4 — Layer 4 (TCP/UDP) proxying

How to Build

# Source and build location (mirrored on forge)
~/code/3rd/caddy/bin/caddy

# Build via mise task in the caddy clone
cd ~/code/3rd/caddy && mise run build

Forge Mirrors

  • mirrors/caddy
  • mirrors/caddy-gandi
  • mirrors/xcaddy
  • mirrors/caddy-l4
  • caddy — Service reference card
  • routing — Service routing architecture