Skip to content

Navigation Menu

Sign in
Sign up

Repository files navigation

Bang Caddy Vercel DNS image

This builds a Caddy image for Bang with the Vercel DNS-01 provider included.

Target image:

ghcr.io/shenlok/bang-caddy-vercel:2.10.2-vercel

Target platform:

linux/amd64

Bang is a Synology DS220+ with x86_64 / Gemini Lake hardware, so linux/amd64 is the architecture that matters. Building through GitHub Actions avoids Windows Docker Desktop or local WSL producing an image for the wrong platform.

What is included

  • Base Caddy version: 2.10.2, matching the previously deployed ghcr.io/caddybuilds/caddy-cloudflare:2.10.2-alpine generation.
  • Added module: local github.com/caddy-dns/vercel replacement under modules/vercel, updated for Caddy 2.10 / libdns v1.
  • Build-time verification: the Dockerfile runs caddy list-modules and fails unless dns.providers.vercel is present.

Build and publish

The private GitHub repo is:

https://github.com/Shenlok/bang-caddy-vercel

The successful build run is:

https://github.com/Shenlok/bang-caddy-vercel/actions/runs/28858259779

Expected result:

ghcr.io/shenlok/bang-caddy-vercel:2.10.2-vercel
ghcr.io/shenlok/bang-caddy-vercel:latest

Because the repository is private, the GHCR package may require authentication before Bang can pull it:

docker login ghcr.io

For the least annoying Synology deployment, make the package public or use a read-only package token.

The workflow also uploads a short-lived Docker archive artifact that can be downloaded and loaded manually on Bang if GHCR visibility/authentication gets in the way.

NAS deployment shape

The Caddy token should not live in the Caddyfile. Put it in /volume1/docker/caddy/.env:

VERCEL_API_TOKEN=replace-with-rotated-token

Then use:

tls {
 dns vercel {env.VERCEL_API_TOKEN}
}

The candidate Compose file is in nas/docker-compose.caddy-vercel.yml.

After the image exists in GHCR, replace Bang's current Caddy Compose image:

ghcr.io/caddybuilds/caddy-cloudflare:2.10.2-alpine

with:

ghcr.io/shenlok/bang-caddy-vercel:2.10.2-vercel

and replace the old CLOUDFLARE_API_TOKEN environment entry with env_file: .env.

Verification on Bang

After pulling and starting the new image:

docker exec caddy caddy list-modules | grep dns.providers.vercel
docker logs --tail 120 caddy

Then test:

http://192.168.2.251/
https://namer.bang.shenlok.dev/
https://video-player.bang.shenlok.dev/

Rotate the Vercel token that was previously embedded in the live Caddyfile after the new setup is working.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

AltStyle によって変換されたページ (->オリジナル) /