The purpose of this project is to operationalize a Python flask app—in a provided file, app.py
—using kubernetes, which is an open-source system for automating the management of containerized applications.
In this project you will find:
- app.py : Python flask app
- requirements.txt : list of dependencies (Python Packages)
- Makefile : used to cerate a new environment, install dependencies, lint project files
- make_prediction.sh : used to make a prediction when app.py is running
- Dockerfile : contains all the commands to be called on the command line to containerize this application
- run_docker.sh : Shell script used to deploy the containerized application using Docker
- upload_docker.sh : Shell script used to upload the built image to docker
- run_kubernetes.sh : Shell script used to deploy this application using kubectl
- output_txt_files : contains
- docker_out.txt : Sample of log output after running a prediction via Docker
- kubernetes.out.txt : Sample of terminal output after running a prediction via Kubernetes deployment
- .circleci : contains congif.yml, used to test environment set up with CircleCi
Starting project files : Udacity Project
- Create a virtualenv and activate it
- Run
make install
to install the necessary dependencies
- Standalone:
python app.py
- Run in Docker:
./run_docker.sh
- Run in Kubernetes:
./run_kubernetes.sh
- Setup and Configure Docker locally
- Setup and Configure Kubernetes locally
- Create Flask app in Container
- Run via kubectl
- Mohamed BOUSETTA MAHJOUB - Initial work - MedMahj