Files
madcat-caddy/README.md
T
marauder-actual 987c815d07
Build and Release / build-binaries (arm64, madcat-caddy-linux-arm64, linux) (push) Failing after 12m29s
Build and Release / build-binaries (amd64, madcat-caddy-linux-amd64, linux) (push) Failing after 14m9s
Build and Release / build-deb (arm64, ubuntu-24.04-arm) (push) Has been cancelled
Build and Release / release (push) Has been cancelled
Build and Release / publish-apt (push) Has been cancelled
Build and Release / build-deb (amd64, ubuntu-latest) (push) Failing after 10m21s
Initial madcat-caddy: Caddy + Cloudflare DNS + caddy-security
Forked from tengu-apps/tengu-caddy, adding:
- caddy-security plugin (OAuth 2.0, Basic Auth, JWT)
- Gitea apt registry publishing in CI
- Linux-only builds (arm64 + amd64)
- Replaces/conflicts with caddy and tengu-caddy packages
2026-06-12 14:55:38 +02:00

1.9 KiB

madcat-caddy

Caddy web server with Cloudflare DNS and caddy-security plugins built in. Pre-built .deb packages for Linux servers.

Plugins

Plugin Purpose
caddy-dns/cloudflare DNS-01 ACME challenge via Cloudflare API
caddy-security OAuth 2.0 (GitHub, Google, etc.), Basic Auth, JWT authorization

Install

APT (Debian/Ubuntu)

# Add signing key
sudo curl https://repos.saiden.dev/api/packages/madcat-os/debian/repository.key \
  -o /etc/apt/keyrings/madcat-os.asc

# Add repository
echo "deb [signed-by=/etc/apt/keyrings/madcat-os.asc] https://repos.saiden.dev/api/packages/madcat-os/debian bookworm main" \
  | sudo tee /etc/apt/sources.list.d/madcat-os.list

# Install
sudo apt update
sudo apt install madcat-caddy

Manual .deb

Download from Releases:

# ARM64
curl -fsSLO https://github.com/madcat-os/madcat-caddy/releases/latest/download/madcat-caddy_2.11.2-1_arm64.deb
sudo dpkg -i madcat-caddy_2.11.2-1_arm64.deb

# AMD64
curl -fsSLO https://github.com/madcat-os/madcat-caddy/releases/latest/download/madcat-caddy_2.11.2-1_amd64.deb
sudo dpkg -i madcat-caddy_2.11.2-1_amd64.deb

Configuration

Edit /etc/caddy/Caddyfile:

{
    email you@example.com
    acme_dns cloudflare {env.CF_API_TOKEN}
}

example.com {
    reverse_proxy localhost:8080
}

For Cloudflare API token:

sudo mkdir -p /etc/systemd/system/caddy.service.d
sudo tee /etc/systemd/system/caddy.service.d/env.conf << EOF
[Service]
Environment="CF_API_TOKEN=your-cloudflare-api-token"
EOF
sudo systemctl daemon-reload
sudo systemctl restart caddy

Building

make deb ARCH=arm64
make deb ARCH=amd64

License

Caddy is licensed under Apache 2.0. This packaging is MIT.