Kubernetes Deployment Guide
This project supports deployment to Kubernetes using Helm.
Prerequisites
Chart Structure
The Helm chart is located in deploy/kubernetes/helm/data-continuum. It manages:
- API: FastAPI backend
- UI: React frontend
- ML: Machine Learning service
- Seeder: Data seeding job
- Infrastructure: Postgres, MongoDB, Redis (basic deployments)
- Airflow: Webserver and Scheduler
Getting Started
1. Build Docker Images
Before deploying, ensure your Docker images are built and available in your cluster's registry.
docker build -t data-continuum-api:latest ./api
docker build -t data-continuum-ui:latest ./ui
docker build -t data-continuum-ml:latest ./ml
docker build -t data-continuum-seeder:latest ./seeder
Note: If using Minikube, run eval $(minikube docker-env) before building.
2. Install the Chart
Navigate to the root directory and run:
3. Verify Deployment
Check the status of your pods:
4. Access the Services
You can port-forward to access the services locally:
# API
kubectl port-forward svc/data-continuum-api 8000:8000
# UI
kubectl port-forward svc/data-continuum-ui 5173:5173
# Airflow
kubectl port-forward svc/data-continuum-airflow-webserver 8080:8080
Configuration
You can customize the deployment by modifying values.yaml or by passing --set flags during installation.
Example:
helm install data-continuum ./deploy/kubernetes/helm/data-continuum \
--set replicaCount=3 \
--set api.image.tag=v1.2.3
Uninstalling
To remove the deployment: