Skip to content

FrothyRythm/technovapr

Repository files navigation

TechNova DevOps Project :- This is a beginner-friendly DevOps project to learn how to automate deployments using:

  • Node.js (Simple web app)
  • Docker (Containerize the app)
  • Jenkins (CI/CD tool)
  • AWS EC2 (Deploy app to the cloud)
  • Terraform (Create EC2 server using code)
  • GitHub + DockerHub (Store code and Docker image)
  • Project Folder Files File/Folder Description
  • hello.js – Node.js file – a basic web app (runs on port 3000)
  • Dockerfile – Builds a Docker image from hello.js
  • package.json – Lists Node.js packages (dependencies)
  • node_modules/ – Auto-generated folder when you run npm install
  • terraform/ – Contains main.tf and variables.tf to launch EC2
  • main.tf – Terraform script to create AWS EC2 server
  • variables.tf – Stores EC2 configuration variables
  • README.md – This file explaining your project

Here’s what each file or folder does:

  • Project Setup (Step-by-Step) 1. Clone Your Repository
git clone https://github.com/your-username/your-repo.git
cd your-repo

2. Install Node Modules

npm install

3. Run Node.js App

node hello.js

Visit: http://localhost:3000

  • ■ Docker Setup 4. Build Docker Image
docker build -t technova-app .

5. Run Docker Container

docker run -p 3000:3000 technova-app

Visit: http://localhost:3000

  • ■■ Terraform Setup (AWS EC2) 6. Initialize Terraform
cd terraform
terraform init

7. Apply Terraform

terraform apply

Respond with yes

  • Jenkins Setup Go to Jenkins > Manage Jenkins > Credentials > (global) Add these:
  • ID: github-token (your GitHub token)
  • ID: dockerhub-cred (your DockerHub login) Create pipeline job to:
  • Clone repo
  • Build image
  • Push to DockerHub
  • Deploy to EC2
    • Important: .gitignore Add this to .gitignore to avoid uploading sensitive files:
node_modules/
technovat1.pem
terraform.tfstate

■ Author

  • Kshitij
  • Role: AWS EC2, Docker, Terraform & Jenkins Automation
  • ■ License
  • This project is for educational purposes.

About

Sample repo for techova devops pipeline

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •