Train and Deploy Machine Learning Model With Web Interface - Docker, PyTorch & Flask.


Running on Local/cloud machine

Clone the repo and build the docker image

sudo docker build -t flaskml .

Then after that you can run the container while specefying the absolute path to the app

sudo docker run -i -t --rm -p 8888:8888 -v **absolute path to app directory**:/app flaskml

This will run the application on localhost:8888

You can use or Ngrok to port the application to the web.

Running on Jetson-Nano

On Jetson-nano, to avoid long running time to build the image, you can download it from Docker Hub.
We will also use a costumized Docker command to be able to access the GPU of the device on the container.

docker pull imadelh/jetson_pytorch_flask:arm_v1

Then on your device you can access the bash (this the default command on that image)

sudo ./ run -i -t --rm -v /home/imad:/home/root/ imadelh/jetson_pytorch_flask:arm_v1

and then simply get to the application directory and run it

cd app

Useful files


This a generic web app for ML models. You can update your the network and weights by changing the following files.