Uniovi AVIB Morphing Projection Backend Analytic Service.
STEP01: Scaffolding your python project:
$ putup --markdown uniovi-avib-morphingprojections-backend-analytics -p morphingprojections_backend_analytics \
-d "Uniovi AVIB Morphing Projection Backend Analytic Service." \
-u https://gsdpi@dev.azure.com/gsdpi/avib/_git/uniovi-avib-morphingprojections-backend-analytics
STEP02: Create a virtual environment in your python project and activated it:
$ cd uniovi-avib-morphingprojections-backend-analytics
$ python3 -m venv .venv
$ source .venv/bin/activate
(.venv) miguel@miguel-Inspiron-5502:~/git/uniovi/uniovi-avib-morphingprojections-backend-analytics$
STEP03: Install development and business dependencies in your project
$ pip install tox
$ pip install pyaml-env
$ pip install pandas
$ pip install dask
$ pip install pyarrow
$ pip install scikit-learn
$ pip install seaborn
$ pip install flask
STEP04: generate the requirements with all python package dependencies
$ pip freeze > requirements.txt
STEP06: Manage python project
tox -e docs # to build your documentation
tox -e build # to build your package distribution
STEP07: Start service from gunicorn server locally
gunicorn --config gunicorn_config.py --log-level=debug 'src.morphingprojections_backend_analytics.service:wsgi()'
STEP08: Manage docker images and run
build image for local environment:
docker build -t uniovi-avib-morphingprojections-backend-analytics:1.0.0 .
docker tag uniovi-avib-morphingprojections-backend-analytics:1.0.0 avibdocker.azurecr.io/uniovi-avib-morphingprojections-backend-analytics:1.0.0
docker push uniovi-avib-morphingprojections-backend-analytics:1.0.0
build image for local minikube environment:
docker build --build-arg ARG_PYTHON_PROFILES_ACTIVE=minikube -t uniovi-avib-morphingprojections-backend-analytics:1.0.0 .
docker tag uniovi-avib-morphingprojections-backend-analytics:1.0.0 avibdocker.azurecr.io/uniovi-avib-morphingprojections-backend-analytics:1.0.0
docker push avibdocker.azurecr.io/uniovi-avib-morphingprojections-backend-analytics:1.0.0
build image for avib environment:
docker build --build-arg ARG_PYTHON_PROFILES_ACTIVE=avib -t uniovi-avib-morphingprojections-backend-analytics:1.0.0 .
docker tag uniovi-avib-morphingprojections-backend-analytics:1.0.0 avibdocker.azurecr.io/uniovi-avib-morphingprojections-backend-analytics:1.0.0
docker push avibdocker.azurecr.io/uniovi-avib-morphingprojections-backend-analytics:1.0.0
Execute flow locally for a case_id 65cdc989fa8c8fdbcefac01e:
docker run --rm uniovi-avib-morphingprojections-backend-analytics:1.0.0
This project has been set up using PyScaffold 4.5. For details and usage information on PyScaffold see https://pyscaffold.org/.