---
# System prepended metadata

title: Course End Project 2

---

# Course End Project 2

[toc]

### Project Details

#### Project Title

:::info
Demonstrate the continuous integration and delivery by building a Docker Jenkins Pipeline.
:::

#### Problem Statement Scenario
:::warning
You are a DevOps consultant in AchiStar Technologies. The company decided to implement DevOps to develop and deliver their products. Since it is an Agile organization, it follows Scrum methodology to develop the projects incrementally. You are working with multiple DevOps Engineers to build a Docker Jenkins Pipeline. During the sprint planning, you agreed to take the lead on this project and plan on the requirements, system configurations, and track the efficiency. 
:::


#### Tasks you are responsible for
:::warning
- Availability of the application and its versions in the GitHub
- Track their versions every time a code is committed to the repository
- Create a Docker Jenkins Pipeline that will create a Docker image from the Dockerfile and host it on Docker Hub
- It should also pull the Docker image and run it as a Docker container
- Build the Docker Jenkins Pipeline to demonstrate the continuous integration and continuous delivery workflow
- Company goal is to deliver the product frequently to the production with high-end quality.
:::

#### Tools you must use
:::warning
- Docker: To build the application from a Dockerfile and push it to Docker Hub
- Docker Hub: To store the Docker image
- GitHub: To store the application code and track its revisions
- Git: To connect and push files from the local system to GitHub
- Linux (Ubuntu): As a base operating system to start and execute the project
- Jenkins: To automate the deployment process during continuous integration
:::
#### Acceptance Criteria
:::warning
- Document the step-by-step process from the initial installation to the final stage
- Track the versions of the code in the GitHub repository
- Availability of the application in the Docker Hub
- Track the build status of Jenkins for every increment of the project
:::




