Get started
Pick the path that matches your environment. Docker for laptops, Helm for production clusters.
Quick start (Docker)
Three commands to a running SparkLabX. Requires Docker + Docker Compose v2.
git clone https://github.com/sparklabx/sparklabx.git
cd sparklabx
./quickstart.sh
The script generates random secrets, pulls public Docker images from ghcr.io/sparklabx/, starts the stack, and prints the admin password. Open http://localhost:3000, log in as admin.
First-time install: the kernel image is ~1.2 GB compressed. On average broadband expect 5–15 min for the initial pull. Subsequent starts are instant.
Kubernetes (Helm)
Single source of truth in chart/. Works on EKS, GKE, AKS, k3s, and bare-metal with a default StorageClass and ingress controller.
helm install sparklabx ./chart \
--namespace sparklabx --create-namespace \
--set secrets.jwtSecretKey="$(openssl rand -base64 48)" \
--set secrets.seedAdmin.password="$(openssl rand -base64 16)" \
--set secrets.minio.rootPassword="$(openssl rand -base64 24)" \
--set ingress.host=notebook.example.com
Cluster requirements
- Default StorageClass with dynamic provisioning
- An ingress controller (nginx-ingress, traefik) if
ingress.enabled=true - cert-manager + a ClusterIssuer for automatic TLS — optional
Uninstall
# Docker
docker compose down -v
# Kubernetes
helm uninstall sparklabx -n sparklabx
kubectl delete pvc --all -n sparklabx
kubectl delete namespace sparklabx