Skip to content

otterscale/dashboard

Repository files navigation

OtterScale Dashboard

Build License: AGPL-3.0

Kubernetes multi-cluster management UI — SvelteKit + Connect RPC.

Architecture

graph LR
    Browser -->|HTTP| SvelteKit[SvelteKit SSR]
    SvelteKit -->|OAuth 2.0| Keycloak
    SvelteKit -->|Session| Redis
    SvelteKit -->|Connect RPC| API[OtterScale API]
    API --> K8s[Kubernetes Clusters]
    API --> Prometheus

    subgraph Connect RPC Services
        API --- ScopeService
        API --- ResourceService
        API --- StorageService
        API --- NetworkService
        API --- InstanceService
        API --- ApplicationService
        API --- ModelService
        API --- FleetService
        API --- OrchestratorService
    end
Loading

🚀 Quick Start

# Clone
git clone https://github.com/otterscale/dashboard.git && cd dashboard

# Configure
cp .env.example .env   # edit .env

# Dev
pnpm install && pnpm dev

# Production (Docker)
docker build -t otterscale/dashboard .
docker run -p 3000:3000 --env-file .env otterscale/dashboard

⚙️ Configuration

ENV_VAR Default Description
PUBLIC_WEB_URL http://localhost:3000 Public URL (required)
API_URL http://localhost:8299 OtterScale API endpoint (required)
REDIS_URL Redis connection string (required)
KEYCLOAK_REALM_URL Keycloak realm URL (required)
KEYCLOAK_CLIENT_ID OAuth client ID (required)
KEYCLOAK_CLIENT_SECRET OAuth client secret (required)
BOOTSTRAP_MODE 0 Skip auth for initial setup (optional)

Features

  • Multi-cluster K8s management — scopes, resources, RBAC
  • Storage orchestration — Ceph pools, OSD, NFS, SMB, object gateway
  • VM lifecycle — create, manage, console via xterm.js
  • AI/ML model serving — LLM deployment & inference proxy
  • Prometheus monitoring — built-in metrics & dashboards

License

AGPL-3.0

About

Web-based dashboard for the OtterScale platform.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

 
 
 

Contributors