Skip to main content
  1. DevOps & Cloud Engineering Projects/

Retail Store Sample App - GitOps with EKS Auto Mode

·465 words·3 mins
Author
Afzal Hassan
Senior DevOps Engineer & Cloud Architect

🏪 Retail Store Sample App - GitOps with EKS Auto Mode
#

A comprehensive sample application demonstrating modern DevOps practices and GitOps principles on AWS EKS. This project showcases a complete retail store application with microservices architecture, automated deployment pipelines, and infrastructure as code.

🎯 Project Overview
#

This retail store application is designed to illustrate various concepts related to containers on AWS, presenting a complete e-commerce solution including product catalog, shopping cart, and checkout functionality. The project demonstrates modern DevOps practices including GitOps, Infrastructure as Code, and automated CI/CD pipelines.

🏗️ Architecture
#

Application Services
#

  • UI Service: Java-based frontend application
  • Catalog Service: Go-based product catalog API
  • Cart Service: Java-based shopping cart API
  • Orders Service: Java-based order management API
  • Checkout Service: Node.js-based checkout orchestration API

Infrastructure Stack
#

  • Container Orchestration: Amazon EKS with Auto Mode
  • GitOps: ArgoCD for automated deployments
  • Infrastructure as Code: Terraform for AWS resources
  • CI/CD: GitHub Actions for automated builds
  • Container Registry: Amazon ECR (both public and private)
  • Ingress: NGINX Ingress Controller
  • SSL: Cert Manager for automated certificates

🚀 Key Features
#

Dual-Branch Deployment Strategy
#

  • 🌐 Public Application (Main Branch): Simple deployment with public images for demos and learning
  • 🏭 Production (GitOps Branch): Full production workflow with automated CI/CD pipeline

Modern DevOps Practices
#

  • GitOps Workflow: Automated deployments triggered by Git changes
  • Infrastructure as Code: Complete AWS infrastructure managed with Terraform
  • Multi-Environment Support: Separate configurations for development and production
  • Security Best Practices: Private subnets, IAM roles, and security groups

🛠️ Technology Stack
#

CategoryTechnology
Cloud PlatformAWS (EKS, ECR, VPC, IAM)
Container OrchestrationKubernetes 1.23+
GitOpsArgoCD
Infrastructure as CodeTerraform
CI/CDGitHub Actions
Container RegistryAmazon ECR
Ingress ControllerNGINX
SSL/TLSCert Manager
LanguagesJava, Go, Node.js, TypeScript

📊 Project Statistics
#

  • Repository: GitHub Repository
  • Language Distribution: Java (65.4%), TypeScript (12.1%), HTML (9.3%), Go (4.8%)
  • Forks: 6
  • License: MIT-0

🔧 Implementation Highlights
#

Phase 1: Core Infrastructure
#

  • VPC with public and private subnets
  • Amazon EKS cluster with Auto Mode enabled
  • Bastion host for secure cluster access
  • Security groups and IAM roles

Phase 2: Application Platform
#

  • ArgoCD for GitOps deployment
  • NGINX Ingress Controller
  • Cert Manager for SSL certificates
  • Complete application deployment

Automation Features
#

  • Automated image building and pushing to ECR
  • GitOps-driven deployments with ArgoCD
  • Infrastructure provisioning with Terraform
  • Multi-environment deployment strategies

🎨 Professional Impact
#

This project demonstrates:

  • Enterprise-Grade Architecture: Production-ready microservices setup
  • Modern DevOps Practices: GitOps, Infrastructure as Code, automated pipelines
  • Cloud-Native Development: Kubernetes-native application design
  • Scalability: Auto-scaling capabilities with EKS Auto Mode
  • Security: Best practices for container security and access control

🔗 Related Resources#


This project showcases the power of modern DevOps practices and GitOps principles in creating scalable, maintainable, and secure cloud-native applications.