01 Kubernetes
2048 on Amazon EKS
A browser game deployed to Kubernetes with Terraform and ArgoCD.
“Follow a change from Git to the running game, then see how a browser request finds its way to a pod.”
Read the full project
I picked 2048 because the game itself is simple. That let me spend my time on Kubernetes: getting traffic to the app, rolling out a new image and checking that it was healthy.
From the browser to a pod
Terraform provisions the AWS environment. The EKS cluster has a managed node group in each of two Availability Zones, and the game runs with replicas across both. An internet-facing Network Load Balancer passes connections to Traefik, which handles HTTPS and routes requests to the Kubernetes service. Cert-manager obtains the certificates, while Prometheus and Grafana give me a view of the game and cluster.
From a commit to the cluster
I separated infrastructure changes from application releases. The app workflow builds the Docker image, scans it with Trivy, pushes it to ECR with the commit SHA as its tag, and writes that tag back to the Kubernetes manifest in Git. ArgoCD reconciles the cluster with the updated manifest. I can update the game without reprovisioning the cluster, and tear the environment down between sessions to control costs.