Chai Kafe is a Spring Boot-based web application demonstrating a complete production-grade DevOps CI/CD pipeline using modern cloud-native tools and GitOps deployment practices.
The project showcases the full lifecycle of application delivery — from development to automated deployment on Kubernetes using AWS infrastructure.
This project integrates multiple DevOps tools and cloud services:
| Category | Tools Used |
|---|---|
| Source Control | GitHub |
| Build Tool | Maven |
| Containerization | Docker |
| CI/CD Automation | Jenkins |
| Container Registry | AWS ECR |
| Cloud Infrastructure | AWS EC2 |
| Kubernetes | Amazon EKS |
| GitOps | ArgoCD |
| Ingress | AWS ALB Controller |
| SSL Certificate | AWS ACM |
| DNS Management | Route53 |
| Security Scanning | Trivy |
| Code Quality | SonarQube |
Developer
↓
GitHub
↓
Jenkins CI/CD Pipeline
↓
Docker Image Build
↓
AWS ECR (Container Registry)
↓
ArgoCD GitOps Deployment
↓
Amazon EKS (Kubernetes)
↓
AWS ALB Ingress Controller
↓
Route53 DNS
↓
ACM SSL (HTTPS)
Developed a Spring Boot web application representing a café portal.
- Spring Web
- Spring Boot Actuator
- Thymeleaf
| Endpoint | Description |
|---|---|
/ |
Home Page |
/menu |
Displays available menu items |
/about |
About Chai Kafe |
/contact |
Contact information |
Application verified locally:
http://localhost:8080
http://localhost:8080/menu
http://localhost:8080/about
http://localhost:8080/contact
The application was containerized using Docker.
FROM eclipse-temurin:17-jre
WORKDIR /app
COPY target/task-manager-api-0.0.1-SNAPSHOT.jar app.jar
EXPOSE 8080
ENTRYPOINT ["java","-jar","app.jar"]Stage 1 – Build
FROM maven:3.9.6-eclipse-temurin-17 AS builder
WORKDIR /app
COPY . .
RUN mvn clean package -DskipTestsStage 2 – Runtime
FROM eclipse-temurin:17-jre-jammy
WORKDIR /app
COPY --from=builder /app/target/task-manager-api-0.0.1-SNAPSHOT.jar app.jar
EXPOSE 8080
ENTRYPOINT ["java","-jar","app.jar"]- Amazon Linux
- Docker installed
- Jenkins installed
- Git installed
- IAM Role attached to EC2
AmazonEC2ContainerRegistryFullAccess
aws sts get-caller-identity
Created an AWS Elastic Container Registry repository.
aws ecr create-repository --repository-name chai-kafe-app
aws ecr get-login-password --region us-east-1 \
| docker login --username AWS --password-stdin <ACCOUNT_ID>.dkr.ecr.us-east-1.amazonaws.com
A fully automated Jenkins pipeline was implemented.
- Clone GitHub Repository
- Maven Build
- SonarQube Code Scan
- Quality Gate Validation
- Docker Image Build
- Trivy Security Scan
- ECR Authentication
- Docker Image Tagging
- Docker Push to ECR
- Update Kubernetes Deployment YAML
- ArgoCD GitOps Sync
The pipeline ensures automated build, security validation, and deployment.
The application is deployed to Amazon EKS cluster.
- Namespace →
chai-kafe - Deployment
- Service
- 2 replicas for high availability
- Container port: 8080
- Service type: ClusterIP
Installed AWS Load Balancer Controller using Helm.
- Internet-facing ALB
- Target Type: IP
- HTTP (80) + HTTPS (443)
- Automatic HTTP → HTTPS redirect
- ACM SSL certificate attached
Example ALB:
k8s-chaikafe-chaikafe-xxxxx.us-east-1.elb.amazonaws.com
Domain configured using Route53.
chaikafe.in
- Created ACM SSL certificate
- DNS validation completed
- Route53 Alias record mapped to ALB
https://chaikafe.in
https://www.chaikafe.in
HTTPS is fully enabled.
kubectl get pods -n chai-kafe
kubectl get svc -n chai-kafe
kubectl get ingress -n chai-kafe
kubectl logs -f deploy/chai-kafe-app -n chai-kafe
- Pod status validation
- Service connectivity check
- Ingress routing verification
- HTTP → HTTPS redirect validation
- SSL certificate verification
- Complete CI/CD automation
- Docker containerization
- GitOps deployment with ArgoCD
- Kubernetes orchestration using Amazon EKS
- Infrastructure security scanning
- Code quality validation
- SSL-secured production deployment
- Domain routing using Route53
The Chai Kafe DevOps implementation demonstrates a production-ready DevOps workflow with automated build, security validation, container deployment, and GitOps-driven Kubernetes delivery.
This project represents a modern cloud-native DevOps pipeline suitable for scalable microservice deployments.