draskenlabs.com
- The problem
- Serve a server-rendered site and CMS-backed blog from infrastructure the team controls, with repeatable releases and no single pod as a point of failure.
- What we built
- Cloudflare for DNS and CDN in front of a Kubernetes ingress with TLS; the application runs as a containerised, autoscaled deployment, with the CMS headless behind it. GitHub Actions builds every merge to main and publishes a tagged image; 2–6 autoscaled replicas and a disruption budget keep it serving through node drains.
- The result
- Releases go out from a merge to main, and the site keeps serving while pods restart or nodes are drained.