This project demonstrates a complete DevOps CI/CD pipeline for a Node.js application using:
- GitHub Actions
- Docker
- Docker Hub
- Terraform
- AWS EC2
- Docker Compose
The pipeline automatically:
- Runs tests
- Builds Docker image
- Pushes image to Docker Hub
- Creates infrastructure using Terraform
- Deploys containerized application to AWS EC2
- Node.js
- Docker
- Docker Compose
- GitHub Actions
- Terraform
- AWS EC2
- Ubuntu Server
GitHub Push
↓
GitHub Actions
↓
Run Tests
↓
Terraform Apply
↓
Docker Build
↓
Docker Hub Push
↓
Deploy to EC2
- Automated CI/CD pipeline
- Infrastructure as Code using Terraform
- Containerized Node.js application
- Docker Compose deployment
- Auto deployment on push to main branch
- AWS EC2 provisioning
- Docker Hub integration
Docker Image:
ayushsingh0/devops-project:v1
Workflow File:
.github/workflows/deploy.yml
terraform initterraform apply -auto-approveterraform destroy -auto-approvedocker build -t devops-project .docker run -p 3000:3000 devops-project- NGINX Reverse Proxy
- HTTPS with Certbot
- Monitoring using Prometheus & Grafana
- Kubernetes Deployment
- AWS ECS Migration
- Terraform Remote Backend
Ayush Singh