Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jibrand/nodejs-aws-crud-app-with-rds-s3-and-jenkins-pipelines
This repository contains a complete DevOps project with a CI/CD pipeline built using Jenkins, Docker, AWS RDS, and EC2, featuring automated deployments and continuous integration for a Node.js application.
https://github.com/jibrand/nodejs-aws-crud-app-with-rds-s3-and-jenkins-pipelines
aws awss3 cicd devops docker nodejs rds
Last synced: 8 days ago
JSON representation
This repository contains a complete DevOps project with a CI/CD pipeline built using Jenkins, Docker, AWS RDS, and EC2, featuring automated deployments and continuous integration for a Node.js application.
- Host: GitHub
- URL: https://github.com/jibrand/nodejs-aws-crud-app-with-rds-s3-and-jenkins-pipelines
- Owner: Jibrand
- Created: 2024-12-31T14:22:44.000Z (8 days ago)
- Default Branch: main
- Last Pushed: 2024-12-31T14:39:36.000Z (8 days ago)
- Last Synced: 2024-12-31T15:29:21.591Z (8 days ago)
- Topics: aws, awss3, cicd, devops, docker, nodejs, rds
- Language: JavaScript
- Homepage:
- Size: 85 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: Readme.md
Awesome Lists containing this project
README
# DevOps Project - CI/CD Pipeline with AWS RDS, Docker, Jenkins, and EC2
## Architecture Diagram
![3-Tier Application Deployment Diagram](./image.png)
## OverviewWelcome to the **DevOps Project** by Jibran! This project demonstrates a seamless CI/CD pipeline setup using Jenkins, Docker, AWS RDS, and EC2. It is designed to showcase best practices in DevOps, focusing on automation, containerization, and cloud-based deployment. The pipeline is set up to automatically deploy a Node.js application with CRUD operations for user management, utilizing AWS RDS for database storage, Docker for containerization, and Jenkins for continuous integration and delivery.
## Key Features
- **CI/CD Pipeline**: Fully automated build, test, and deployment pipeline.
- **Docker**: Containerization of the application for easy deployment and scalability.
- **AWS RDS**: Relational Database Service (RDS) for managing user data in a cloud environment.
- **AWS S3**: Integration with S3 for storing and retrieving user files.
- **EC2 Deployment**: Seamless deployment of the application to AWS EC2 instances.
- **Jenkins Integration**: Continuous integration and continuous delivery (CI/CD) pipeline powered by Jenkins.
## Project SetupFollow these steps to set up the project locally and run the CI/CD pipeline.
### Prerequisites
Before you begin, ensure that you have the following:
- **AWS Account** with S3, EC2, and RDS access.
- **Docker** installed on your local machine.
- **Jenkins** server set up with AWS credentials configured.
- **Git** installed for version control.
### Jenkins PipelineThe Jenkins pipeline is configured with the following stages:
1. **Checkout**: Clone the GitHub repository.
2. **Install Dependencies**: Install necessary npm packages.
3. **Build Docker Image**: Build the Docker image for the application.
4. **Push to ECR**: Authenticate with AWS ECR and push the Docker image to the registry.
5. **Deploy to EC2**: SSH into the EC2 instance and deploy the Docker container.---
## How to Star the Repository
If you find this project helpful, please star the repository on GitHub to show your support:
1. Click the ⭐ button in the top-right corner.---
## Author
**Jibran**
Passionate DevOps Engineer and Software Developer.
Connect with me on [LinkedIn](https://www.linkedin.com/in/muhammad-jibran220/).---
## Feedback & Contributions
Contributions are welcome! Feel free to fork the repository and submit a pull request.---