Hidden-primary DNS for ~91 zones: CoreDNS + custom rfc2136 plugin for self-hosted ACME DNS-01. Source of truth for zones/, Corefile, deploy configs.
Find a file
Ryan Malloy 3720cd2885 deploy: enable rfc2136 plugin for all 84 production zones
Wires the custom CoreDNS image (built via coredns/Dockerfile, source
includes git.supported.systems/rsp2k/coredns-rfc2136) into production:

- docker-compose.yml: switch coredns service from upstream image pin
  to a build target. New `image: coredns-rfc2136:${COREDNS_IMAGE_TAG}`
  is locally-built; `up -d coredns` triggers the build.
- .env: COREDNS_IMAGE_TAG=2026.05.21 (CalVer). Old COREDNS_IMAGE kept
  as a comment for emergency rollback to upstream 1.11.3.
- Corefile: new rfc2136 directive inside (common) snippet enumerating
  all 84 zones currently in zones/. Plugin is now in the chain for
  every server block (plain DNS, DoT, DoH). UPDATE opcode lands in
  the plugin handler; auto-commit on, CalVer SOA serial bumping on,
  zones-dir /zones matches the existing bind-mount.

TSIG key is read from ${ACME_TSIG_SECRET} which lives in .env.local
(gitignored). Production deployment needs that file synced to dell01
separately.

This commit DOESN'T trigger the deployment by itself -- the image
must be built on dell01 and the container recreated to apply.
2026-05-21 12:17:20 -06:00
caddy coredns: production Let's Encrypt cert via Caddy sidecar (DNS-01 + Vultr) 2026-05-14 01:34:57 -06:00
coredns coredns/Dockerfile: update plugin module path to git.supported.systems 2026-05-21 10:31:30 -06:00
scripts Retire prepare-zones.sh pipeline; zones/ is now the served form 2026-05-21 11:14:42 -06:00
secondary secondary: scaffold public CoreDNS secondary on ns.supported.systems 2026-05-20 18:40:11 -06:00
zones supported.systems: ssh → 149.28.207.111; vpn + web-bmh-servicedesk.bmh → CNAME ssh 2026-05-21 11:51:01 -06:00
.env deploy: enable rfc2136 plugin for all 84 production zones 2026-05-21 12:17:20 -06:00
.env.local.example Phase 0 scaffolding: RFC 2136 plugin groundwork (inactive) 2026-05-20 18:20:43 -06:00
.gitignore Retire prepare-zones.sh pipeline; zones/ is now the served form 2026-05-21 11:14:42 -06:00
CLAUDE.md secondary: scaffold public CoreDNS secondary on ns.supported.systems 2026-05-20 18:40:11 -06:00
Corefile deploy: enable rfc2136 plugin for all 84 production zones 2026-05-21 12:17:20 -06:00
docker-compose.yml deploy: enable rfc2136 plugin for all 84 production zones 2026-05-21 12:17:20 -06:00
Makefile Retire prepare-zones.sh pipeline; zones/ is now the served form 2026-05-21 11:14:42 -06:00