Skip to content

Commit 6063917

Browse files
committed
Merge branch 'master'
2 parents 5d75df2 + ec0da40 commit 6063917

2 files changed

Lines changed: 86 additions & 2 deletions

File tree

ALL+MATERIALS+-+1 (1).zip

8.25 MB
Binary file not shown.

README.md

Lines changed: 86 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,86 @@
1-
![alt text](image.png) keys
2-
LIVE at: http://a4d76dacd85884eaaa2c0f1b1e173b67-1601615365.us-east-1.elb.amazonaws.com
1+
# Hotel Reservation Prediction
2+
3+
![Python](https://img.shields.io/badge/Python-3.9-blue?logo=python&logoColor=white)
4+
![Flask](https://img.shields.io/badge/Flask-2.0.3-green?logo=flask&logoColor=white)
5+
![Docker](https://img.shields.io/badge/Docker-Containerization-blue?logo=docker&logoColor=white)
6+
![AWS](https://img.shields.io/badge/AWS-Cloud-orange?logo=amazon-aws&logoColor=white)
7+
![Jenkins](https://img.shields.io/badge/Jenkins-CI%2FCD-red?logo=jenkins&logoColor=white)
8+
![LightGBM](https://img.shields.io/badge/LightGBM-Model-green?logo=lightgbm&logoColor=white)
9+
10+
## Live Application
11+
**Try before I am out of AWS credits**: [Hotel Reservation Prediction](http://a4d76dacd85884eaaa2c0f1b1e173b67-1601615365.us-east-1.elb.amazonaws.com)
12+
13+
## Overview
14+
This project demonstrates an end-to-end MLOps pipeline for predicting hotel reservations. It includes data ingestion, preprocessing, model training, and deployment. The application is deployed on AWS using EKS and Load Balancer, and it features a Flask-based web interface for user interaction.
15+
16+
## Features
17+
- **MLOps Pipeline**: Automates machine learning workflows.
18+
- **Flask Web Application**: User-friendly interface for predictions.
19+
- **AWS Deployment**: Hosted on AWS using EKS and Load Balancer.
20+
- **Dockerized Application**: Fully containerized for portability.
21+
- **CI/CD Pipeline**: Seamless integration and deployment with Jenkins and GitHub Actions.
22+
- **LightGBM Model**: Efficient and accurate predictions.
23+
24+
## Technologies Used
25+
- **Python**: Core programming language.
26+
- **Flask**: Web framework for the application.
27+
- **Docker**: Containerization for consistent environments.
28+
- **AWS**: Cloud platform for deployment.
29+
- **Jenkins**: CI/CD pipeline for automation.
30+
- **GitHub Actions**: For continuous integration and deployment.
31+
- **LightGBM**: Machine learning model for predictions.
32+
33+
## Getting Started
34+
35+
### Prerequisites
36+
- Python 3.9+
37+
- Docker
38+
- AWS CLI
39+
- kubectl
40+
- Jenkins (optional for CI/CD)
41+
42+
### Installation
43+
1. Clone the repository:
44+
```bash
45+
git clone https://github.com/your-repo/hotel-reservation-prediction.git
46+
cd hotel-reservation-prediction
47+
```
48+
49+
2. Install dependencies:
50+
```bash
51+
pip install -r requirements.txt
52+
```
53+
54+
3. Build the Docker image:
55+
```bash
56+
docker build -t flask-app .
57+
```
58+
59+
4. Run the Docker container:
60+
```bash
61+
docker run -p 5000:5000 flask-app
62+
```
63+
64+
5. Access the application:
65+
Open your browser and navigate to `http://localhost:5000`.
66+
67+
### Deployment on AWS
68+
1. Push the Docker image to Amazon ECR.
69+
2. Deploy the application to an EKS cluster.
70+
3. Access the application via the Load Balancer URL.
71+
72+
## Deployment Process
73+
- **DinD Deployment**: Used Docker-in-Docker for building and testing the application.
74+
- **GitHub Actions**: Automated CI/CD pipeline for testing and deployment.
75+
- **EKS AWS Deployment**: Deployed the Docker image to an AWS EKS cluster for scalability and reliability.
76+
77+
## Contributing
78+
We welcome contributions! To contribute:
79+
1. Fork the repository.
80+
2. Create a new branch for your feature or bug fix.
81+
3. Commit your changes and push the branch.
82+
4. Open a pull request.
83+
84+
85+
## License
86+
This project is licensed under the MIT License.

0 commit comments

Comments
 (0)