Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dev-eranda/docker-jenkins-ci-cd-pipeline
This repository demonstrates the setup of a CI/CD pipeline using Docker and Jenkins. It includes configurations for Dockerizing a Node.js API app, setting up Jenkins jobs, and automating build and deployment processes. The project showcases best practices for integrating Docker with Jenkins to streamline development workflows and enhance deployment
https://github.com/dev-eranda/docker-jenkins-ci-cd-pipeline
cicd docker jenkins nodejs
Last synced: about 1 month ago
JSON representation
This repository demonstrates the setup of a CI/CD pipeline using Docker and Jenkins. It includes configurations for Dockerizing a Node.js API app, setting up Jenkins jobs, and automating build and deployment processes. The project showcases best practices for integrating Docker with Jenkins to streamline development workflows and enhance deployment
- Host: GitHub
- URL: https://github.com/dev-eranda/docker-jenkins-ci-cd-pipeline
- Owner: dev-eranda
- License: mit
- Created: 2024-09-11T09:24:21.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2024-10-18T17:23:48.000Z (2 months ago)
- Last Synced: 2024-11-25T18:25:45.829Z (about 1 month ago)
- Topics: cicd, docker, jenkins, nodejs
- Language: JavaScript
- Homepage:
- Size: 25.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# CI/CD Pipeline with Docker and Jenkins
This repository contains code for setting up a Continuous Integration/Continuous Deployment (CI/CD) pipeline using Docker and Jenkins. The pipeline automates the process of building, testing, and deploying applications, ensuring efficiency and consistency in software development workflows.
## Overview
The CI/CD pipeline involves the following steps:
1. **GitHub Push**: The process begins when code changes are pushed to the GitHub repository.
2. **Jenkins Build Trigger**: Jenkins, our automation server, is configured to monitor the GitHub repository for changes. Upon detecting a new commit, Jenkins triggers the build process.
3. **Docker Image Creation**: Jenkins pulls the base Docker image from DockerHub and builds a Docker image containing the application and its dependencies.
4. **Docker Image Push**: Once the Docker image is built successfully, Jenkins pushes the image to DockerHub, making it available for deployment.
5. **Update Status**: Jenkins updates the build status on GitHub, providing visibility into the CI/CD process.
6. **Notification**: Users are notified of the build status through GitHub notifications.## Getting Started
To set up the CI/CD pipeline in your environment, follow these steps:
1. **Clone Repository**: Clone this repository to your local machine using the following command:
```
git clone https://github.com/HGSChandeepa/GitHub-Docker-and-Jenkins-CI-CD-Pipeline
```
2. **Configure Jenkins**: Set up Jenkins on your server and configure it to monitor the GitHub repository for changes. Install necessary plugins like Docker Pipeline Plugin.
3. **Set Up DockerHub**: Ensure you have an account on DockerHub where Jenkins can push Docker images.
4. **Configure Pipeline**: In Jenkins, create a new pipeline job and configure it to use the provided Jenkinsfile in this repository.
5. **Trigger Build**: Trigger a build manually or make a code change in the repository to initiate the CI/CD pipeline.## Requirements
- GitHub account
- Jenkins server
- DockerHub account
- Docker installed on Jenkins server## Contributing
Contributions are welcome! If you have suggestions, enhancements, or bug fixes, feel free to open an issue or create a pull request.
## License
This project is licensed under the [MIT License](LICENSE).