https://github.com/frocode/aws-service--k8s
https://github.com/frocode/aws-service--k8s
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/frocode/aws-service--k8s
- Owner: FroCode
- Created: 2025-05-01T22:19:17.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2025-05-01T22:25:12.000Z (12 months ago)
- Last Synced: 2025-08-07T02:57:50.116Z (9 months ago)
- Language: HCL
- Size: 22.5 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🌍 Advanced DevOps Project
This repository demonstrates a complete CI/CD pipeline using **Terraform**, **Jenkins**, **Kubernetes (EKS)**, and **ArgoCD**, enabling automated deployment of a Node.js application on AWS infrastructure.
---
## 📐 Architecture Diagram

---
## ⚙️ Tech Stack
- **Infrastructure as Code**: Terraform
- **Containers**: Docker
- **Orchestration**: Kubernetes (EKS)
- **CI/CD**: Jenkins, ArgoCD, Helm
- **Database**: Amazon RDS
- **Networking**: NGINX Ingress, Cert-Manager, Route53
- **IAM Integration**: OIDC/IRSA
- **App**: Node.js + Express
---
## 📝 Prerequisites
- AWS CLI and credentials configured
- Terraform, Helm, Kubectl, Docker installed
- A registered domain with a hosted zone in Route53
- Jenkins with access to GitHub and AWS
---
## 📊 App Overview
A Node.js API with two endpoints:
- `/client-ip` – stores client IP in RDS
- `/client-ip/list` – returns all stored IPs
---
## 📁 Project Structure
```bash
.
├── terraform/ # IaC to provision EKS, RDS, VPC, etc.
├── k8s/ # Kubernetes manifests (Deployment, Service, Secrets)
├── helm/ # Helm chart for the app
├── jenkins_files/ # CI/CD pipeline scripts
├── app/ # Node.js source code
└── README.md # You're here