- Note: hotfix for werkzeug issue #1992 in place
- Note: changed deployment from Heroku to Google Cloud Run
A simple design for a plotly-dash app with sklearn running within a docker container deployed to Google Cloud Run using CI/CD.
For a deep dive on the implementation please see:
Inspired by This TDD Course
Using pre-commit-hooks
├── .github
│ └── workflows
│ └── main.yml
│
├── project
│ ├── app
│ │ ├── __init__.py
│ │ ├── app.py
│ │ ├── functions.py
│ │ └── assets
│ ├── tests
│ │ └── test_functions.py
│ ├── Dockerfile
│ ├── Dockerfile.prod
│ └── requirements.txt
│
├── release.sh
├── setup.cfg
├── .pre-commit-config.yaml
├── .gitignore
│
└── README.md
To run the image locally, cd into the docker-dash-example folder and:
docker build -t docker-dash project/.
And run the container
docker run -p 8050:8050 docker-dash
You can find to the app on your local machine http://localhost:8050/ (or localhost:8050). This way the image is created using the Dockerfile, instead of the Dockerfile.prod.
This was a fun project to apply different learnings in practice, very happy to hear your thoughts in the repo, including feedback of course!