Credit Survival Analysis: Full stack, credit risk application using FastAPI for backend service, PostgreSQL as database, Docker & Kubernetes for orchestration, RabbitMQ for messaging, PySurvival, MLFlow for the training environment, Streamlit for Frontend (API consuming).
- Full Docker integration (Docker based).
- Kubernetes Microservices.
- Python FastAPI backends.
- Streamlit Frontend
- RabbitMQ Messaging Queue
- PostgreSQL Database
- MLFlow
- pySurvival
- minikube installed
-
Adjust the auth k8s manifest assign appropriate first superuser email, corresponding password and postgres password. Apply the same to other manifests that require them.
-
Create a postgres database named finlytik. For local use I recommend a postgres docker instance using Postgres recipe with IP adjustments to your suit. Run with the default or your choosing of POSTGRES_PASSWORD, FIRST_SUPERUSER_PASSWORD
-
Start minikube by running the following command:
minikube start -
Enable ingress in minikube installation by running the following command:
minikube addons enable ingress -
Set your
/etc/hostsfile with the following: cluster-ip finlytik.com cluster-ip rabbitmq-manager.comGet the
cluster-ipby running the following command:minikube ip -
Run the rabbitmq k8s manifests by running the following command from the folder:
kubectl apply -f . -
Go to rabbitmq-manager.com from your browser and login using
guestfor both the username and password. Create queues namedprofileanddetailon RabbitMQ fro the Queues tab. -
Run the other services by running the following command from the respective manifest folders:
kubectl apply -f . -
Go to finlytik.com from your browser and explore the application.






