This project containerizes a machine learning Python flask app using Docker and deploys it on a Kubernetes cluster. The app predicts housing prices in Boston according to several features, such as average rooms in a home and data about highway access, teacher-to-pupil ratios, and so on. The data was initially taken from Kaggle.
- Standalone:
python app.py
- Run in Docker:
./run_docker.sh
- Run in Kubernetes:
./run_kubernetes.sh
In a separate terminal, run: ./make_prediction.sh
The project includes 4 directories:
model_data
, containing the machine learning modelsoutput_txt_files
, containing the output of running a prediction on Docker and on Kubernetes.circleci
, containing the configuration file to implement CI/CD through CircleCI.git
, containing the git files
It also includes the following files:
app.py
, the main Python flask appDockerfile
, to define a Docker containerLICENSE
, containing info on the licenseMakefile
, to build the projectmake_prediction.sh
, to run predictionsREADME.md
, this filerequirements.txt
, containing the dependencies that are installed through the Makefilerun_docker.sh
, to launch a Docker containerrun_kubernetes.sh
, to deploy containers on a Kubernetes clusterupload_docker.sh
, to upload a Docker image to Docker Hub.gitignore
, to list files that Git should ignore
- Antonella Bernobich Dean - aberdean
This project is licensed under the MIT License - see the LICENSE file for details.