Skip to main content

Architecture

The cobi-dashboard Helm chart deploys the full Cobi platform as a set of Kubernetes workloads. All components run in a single namespace and communicate over the cluster network.

Components

ComponentImagePortPurpose
frontendhellocobi/dashboard-frontend8080Vite/React web application
backendhellocobi/dashboard-backend3000REST API, auth, business logic
connecthellocobi/dashboard-connect8000Data source ingestion service
postgresqlBitnami PostgreSQL5432Auth database (dashboard_auth) and core database (cobi_core)
qdrantqdrant/qdrant6333 / 6334Vector store for semantic search
vllm-stackvllm/vllm-openai8000LLM inference, OpenAI-compatible API
minioBitnami MinIO9000 / 9001S3-compatible object storage for documents
otel-lgtmgrafana/otel-lgtm3000 / 4317 / 9090Grafana + Prometheus + Loki + Tempo

Connection Map

FromToKey environment variablePort
BrowserGateway / Ingress / frontend Route443
Gateway / Ingress / frontend Routefrontend8080
BrowserGateway / Ingress / API RouteVITE_API_BASE_URL443
Gateway / Ingress / API Routebackend3000
Gateway / Ingressconnect8000
backendconnectCONNECT_SERVICE_URL8000
connectminioS3_ENDPOINT9000
backendpostgresqlDATABASE_URL5432
backendqdrantQDRANT_URL6333
backendminioS3_ENDPOINT, S3_ACCESS_KEY_ID, S3_SECRET_ACCESS_KEY9000
backendvllm-stackOPENAI_BASE_URL8000
backendotel-lgtmOTEL_EXPORTER_OTLP_ENDPOINT4318

Dependency Chart Sources

ChartRepositoryVersion
postgresqlhttps://charts.bitnami.com/bitnami16.x.x
qdranthttps://qdrant.github.io/qdrant-helm1.16.3
vllm-stackhttps://vllm-project.github.io/production-stack0.1.9
miniohttps://charts.bitnami.com/bitnami17.x.x

Exposure Models

The chart supports Gateway API, Kubernetes Ingress, and OpenShift Routes for the user-facing app/API path. Enable one model at a time:
  • Gateway API — uses Gateway and HTTPRoute resources, tested with Envoy Gateway. This is the preferred kOps v2/self-hosted rehearsal path and is configured under gateway.
  • Kubernetes Ingress — uses top-level ingress values, tested with nginx. It supports shared-host routing and separate hostnames for app, API, Connect, MinIO, and Grafana.
  • OpenShift Routes — uses frontend and backend API Route resources with edge TLS termination, configured under openshift.route. Connect stays internal through CONNECT_SERVICE_URL unless your deployment needs to expose it separately.