Project information

  • Category:DevOps
  • Task: CI/CD Pipeline Implementation with Docker, Jenkins, and AWS

Description

I have hands-on experience with Docker, Jenkins, AWS EC-2, Git, and GitHub. I deployed a static website on AWS and created a CI/CD pipeline using Docker, Jenkins, and Git. The workflow is as follows: when we update the code on GitHub or commit any changes, the CI/CD pipeline activates. It automatically builds, tests, and deploys the updates on AWS. Here’s a detailed breakdown of the project:

  • Docker:
    • Containerized the application using Docker, ensuring consistency across development, testing, and production environments.
  • Jenkins:
    • Configured Jenkins to monitor the GitHub repository.
    • Set up Jenkins pipelines to automate the build, test, and deployment process.
  • AWS EC-2:
    • Deployed the static website on an AWS EC-2 instance.
    • Configured the instance to host the website and manage deployments.
  • Git and GitHub:
    • Utilized Git for version control and GitHub as the repository hosting service.
    • Integrated GitHub with Jenkins to trigger builds on code commits or pull requests.
  • CI/CD Pipeline:
    • When code is updated or committed to GitHub, Jenkins detects the change.
    • The pipeline is triggered, initiating the Docker container build process.
    • Automated tests are run to ensure code quality.
    • Upon successful testing, the new build is deployed to the AWS EC-2 instance.

This automated CI/CD pipeline streamlined the deployment process, reducing manual intervention and ensuring rapid, reliable updates to the static website hosted on AWS.