Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/shrinivask007/location_tracking
Real-Time Location Sharing Application - DevOps CI/CD Pipeline
https://github.com/shrinivask007/location_tracking
aquatrivy docker dockerhub-image ejs expreesjs jenkins lefleat nodejs owasp-dependencycheck sonarqube
Last synced: 3 days ago
JSON representation
Real-Time Location Sharing Application - DevOps CI/CD Pipeline
- Host: GitHub
- URL: https://github.com/shrinivask007/location_tracking
- Owner: shrinivask007
- License: other
- Created: 2024-07-31T18:53:51.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-10-14T18:21:52.000Z (3 months ago)
- Last Synced: 2024-11-20T23:51:42.283Z (2 months ago)
- Topics: aquatrivy, docker, dockerhub-image, ejs, expreesjs, jenkins, lefleat, nodejs, owasp-dependencycheck, sonarqube
- Language: JavaScript
- Homepage:
- Size: 5.94 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Real-Time Location Sharing Application - DevOps CI/CD Pipeline
This project is a **Real-Time Location Sharing Application** developed in **Node.js**. It follows DevSecOps practices, integrating **CI/CD pipelines** with **GitHub**, **Jenkins**, **SonarQube**, **Docker**, and **Aqua Trivy**. The project emphasizes automation, code quality, security scanning, and containerization.
![Home Page](screenshot/home.png)
# Implemented CI/CD pipeline
- Implemented a CI/CD Pipeline integrating **GitHub** with **Jenkins** for automated build and deployment.
- Utilized **SonarQube scanner** for code quality analysis and **OWASP Dependency-Check** for security
vulnerability scanning.
- Automated **Docker** image creation, pushed images to **DockerHub**, and scanned them using **Aqua Trivy**.
- Deployed and **Containerized** the application using Docker, emphasizing secure DevSecOps practices.## Screenshots
![CI/CD Page](screenshot/ss1.png)
![CI/CD Page](screenshot/ss2.jfif)
![CI/CD Page](screenshot/ss3.jfif)
![CI/CD Page](screenshot/ss4.jfif)## Technologies Used
- **Node.js** ,**Express** ,**HTML/CSS** ,**Socket.IO**
- **Leaflet**: Open-source JavaScript library for interactive maps.
- **GitHub** - Source code repository.
- **Jenkins** - Continuous Integration & Continuous Deployment (CI/CD) automation server.
- **SonarQube** - Code quality analysis tool.
- **OWASP Dependency-Check** - Tool for checking security vulnerabilities in dependencies.
- **Docker** - Containerization of the application.
- **Aqua Trivy** - Security scanner for Docker images.
- **DockerHub** - Container registry to store Docker images.## CI/CD Pipeline Workflow
1. **Source Code Management**: Code is hosted on **GitHub**.
2. **Jenkins Integration**: Every code commit triggers a Jenkins build.
3. **Build and Unit Tests**: Jenkins builds the Node.js application and runs tests.
4. **SonarQube Analysis**: Code is scanned by **SonarQube** for code quality and potential bugs.
5. **OWASP Dependency-Check**: Automated scanning of libraries for security vulnerabilities.
6. **Docker Build**: Docker image is created, tagged, and pushed to **DockerHub**.
7. **Aqua Trivy Scan**: Docker image is scanned for vulnerabilities using **Trivy**.
8. **Deployment**: The containerized application is deployed automatically after successful scans and tests.## Installation
1. **Clone the repository:**
```bash
git clone https://github.com/username/repository.git
```
2. **Navigate to the project directory:**
3. Make sure you have `nodemon` installed globally:
```bash
npm install
npm start
```
4. **Access the application:** Open your browser and go to `http://localhost:3000`.