Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hassan11196/ml-model-ship-and-deploy
How to properly ship and deploy your machine learning model with FastAPI, Docker, and GitHub Actions
https://github.com/hassan11196/ml-model-ship-and-deploy
docker docker-image fastapi hacktoberfest machine-learning ml python uvicorn
Last synced: 3 months ago
JSON representation
How to properly ship and deploy your machine learning model with FastAPI, Docker, and GitHub Actions
- Host: GitHub
- URL: https://github.com/hassan11196/ml-model-ship-and-deploy
- Owner: hassan11196
- License: mit
- Created: 2020-02-01T09:25:16.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2023-11-03T17:59:42.000Z (over 1 year ago)
- Last Synced: 2023-11-03T22:24:34.199Z (over 1 year ago)
- Topics: docker, docker-image, fastapi, hacktoberfest, machine-learning, ml, python, uvicorn
- Language: Python
- Homepage: https://ml-fastapi-model.herokuapp.com/docs
- Size: 686 KB
- Stars: 8
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# How to properly ship and deploy your machine learning model
A practical guide with FastAPI, Docker and GitHub Actions
## Project setup
1. Create the virtual environment.
```
virtualenv /path/to/venv --python=/path/to/python3
```
You can find out the path to your `python3` interpreter with the command `which python3`.2. Activate the environment and install dependencies.
```
source /path/to/venv/bin/activate
pip install -r requirements.txt
```3. Launch the service
```
uvicorn api.main:app
```## Posting requests locally
When the service is running, try
```
127.0.0.1/docs
```
or
```
curl
```## Deployment with Docker
1. Build the Docker image
```
docker build --file Dockerfile --tag fastapi-ml-quickstart .
```2. Running the Docker image
```
docker run -p 8000:8000 fastapi-ml-quickstart
```3. Entering into the Docker image
```
docker run -it --entrypoint /bin/bash fastapi-ml-quickstart
```## docker-compose
1. Launching the service
```
docker-compose up
```
This command looks for the `docker-compose.yaml` configuration file. If you want to use another configuration file,
it can be specified with the `-f` switch. For example2. Testing
```
docker-compose -f docker-compose.test.yaml up --abort-on-container-exit --exit-code-from fastapi-ml-quickstart
```Reference:
https://towardsdatascience.com/how-to-properly-ship-and-deploy-your-machine-learning-model-8a8664b763c4