Jenkins | SonarQube | Trivy | Nexus | Terraform | Docker | Kubernetes | AWS EKS | Prometheus | Grafana
This repository showcases a real-world, production-ready CI/CD pipeline built for a Full-Stack Blogging Platform.
It automates the entire software delivery lifecycle — from code commit to deployment and real-time monitoring — using enterprise DevOps tools on AWS.
This project demonstrates a modern, secure and scalable CI/CD workflow that:
- Fetches source code from GitHub
- Automates build & deployment pipelines using Jenkins
- Ensures code quality with SonarQube
- Performs security scanning using Trivy
- Stores versioned artifacts in Nexus Repository Manager
- Provisions AWS infrastructure using Terraform
- Containerizes the application with Docker
- Deploys workloads to Amazon EKS (Kubernetes)
- Monitors application and cluster metrics via Prometheus & Grafana
This is a complete, production-level DevOps pipeline suitable for enterprise environments.
| Component | Tool |
|---|---|
| Source Control | GitHub |
| CI/CD Automation | Jenkins |
| Code Quality | SonarQube |
| Image Vulnerability Scan | Trivy |
| Artifact Repository | Nexus |
| Infrastructure as Code | Terraform |
| Containerization | Docker |
| Orchestration | Kubernetes (Amazon EKS) |
| Monitoring | Prometheus + Grafana |
| Cloud Provider | AWS |
- Host application code in GitHub
- Jenkins triggers pipeline through Webhooks
- Jenkins pulls code
- Installs dependencies
- Runs tests
- Detects:
- Bugs
- Code smells
- Vulnerabilities
- Scans Docker image for:
- High/Critical CVEs
- Misconfigurations
- Stores:
- Build artifacts
- Docker images
- Versioned builds
Terraform creates:
- VPC
- Subnets
- EKS Cluster
- Node Groups
- Security Groups
- IAM Roles
- Build Docker image
- Push to Nexus/DockerHub
- Deploy to EKS via Kubernetes manifests
- Cluster metrics
- Pod performance
- Application uptime
- Custom dashboards
- Add Helm charts
- Implement Blue/Green or Canary deployments
- Add Slack / Teams notifications
- Integrate ELK Stack for advanced logging
Contributions, suggestions and improvements are welcomed.
Feel free to open Issues or pull requests.





