Skip to content

Pavan-Gunda/operationalize-a-machine-learning-api-

Repository files navigation

operationalize-a-machine-learning-api-

CircleCI

Cloud DevOps, Scaling Microservices

The project's goal is to operationalize a machine learning microservice using kubernetes. The service serves out predictions (inference) about housing prices through API calls. The model has been trained to predict 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.

Install

  • Docker
  • Virtualbox
  • hadolint

Files explanation

  • config.yml: CircleCI configuration file for running the tests
  • app.py: Python flask app that serves out predictions (inference) about housing prices through API calls
  • Dockerfile: Dockerfile for building the image
  • make_prediction.sh: Send a request to the Python flask app to get a prediction
  • Makefile: includes instructions on environment setup and lint tests
  • run_docker.sh: file to be able to get Docker running, locally
  • run_kubernetes.sh: file to run the app in kubernetes
  • upload_docker.sh: file to upload the image to docker

Run the project

  1. To build and run the docker image
./run_docker.sh
  1. To predict using the app in docker container as well as kubernetes cluster
./make_prediction.sh

3.To create a cluster using minikube

minikube start 
  1. To deploy this application in kubernetes run:
./run_kubernetes.sh
  1. Delete the cluster
minikube delete

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published