A full production-style DevOps project demonstrating modern cloud-native practices including CI/CD, GitOps, Kubernetes, and observability.
This project showcases a complete DevOps lifecycle:
- Application built with Next.js + Firebase
- Containerized using Docker
- Automated CI/CD with GitHub Actions
- GitOps deployment using ArgoCD
- Progressive delivery with Argo Rollouts (Blue/Green)
- Hosted on AWS EC2 (k3s Kubernetes cluster)
- Public access via Ingress (Traefik + nip.io)
Developer → GitHub → GitHub Actions → Docker Hub → GitOps Repo → ArgoCD → Kubernetes → Users
- Next.js 16
- Firebase (Auth + Firestore)
- Tailwind CSS
- Docker (multi-stage build)
- Node 20 Alpine
- GitHub Actions
- Docker Buildx
- Docker Hub registry
- ArgoCD
- Separate GitOps repository
- Kustomize-based manifests
- Argo Rollouts
- Blue/Green deployment
- Zero-downtime switching
- AWS EC2 (t3 instance)
- k3s (lightweight Kubernetes)
- Traefik Ingress Controller
- Trigger: push to
main - Build Docker image
- Push to Docker Hub
- Tag with commit SHA + latest
- Update image tag in GitOps repo
- ArgoCD detects change
- Automatically syncs cluster
- 🚀 Zero Downtime Deployment (Blue/Green)
- 🔄 GitOps Workflow
- 🧠 Automated Image Updates
- 🌐 Public Access via Ingress