- Kubernetes Cluster (1.19+): k3s (recommended for dev) or managed K8s.
- kubectl: Configured with cluster access.
- Helm 3.0+: Installed.
- Storage: ReadWriteMany (RWX) provisioner (e.g., NFS).
kubectl create namespace streamspacehelm install streamspace ./chart -n streamspace --create-namespaceEnsure all components are running:
kubectl get pods -n streamspaceYou should see:
streamspace-api(Control Plane)streamspace-ui(Web Interface)streamspace-k8s-agent(Execution Agent)postgres(Database)
Port Forward (Development):
kubectl port-forward -n streamspace svc/streamspace-ui 3000:80Open http://localhost:3000.
Ingress (Production):
Access via your configured domain (e.g., https://streamspace.yourdomain.com).
Default Admin Credentials:
-
Username:
admin -
Password: Retrieve via:
kubectl get secret streamspace-admin-credentials -n streamspace -o jsonpath='{.data.password}' | base64 -d
- Go to Catalog.
- Click Launch on "Firefox Web Browser".
- Wait for the session to start (~30s).
- Click the session card to connect.
Note
v2.0 Architecture: The connection is proxied through the Control Plane via the Agent. No direct connection to the pod is required!
kubectl apply -f - <<EOF
apiVersion: stream.space/v1alpha1
kind: Session
metadata:
name: cli-firefox
namespace: streamspace
spec:
user: admin
template: firefox-browser
state: running
resources:
memory: 2Gi
EOFkubectl patch session cli-firefox -n streamspace --type merge -p '{"spec":{"state":"hibernated"}}'Control Plane:
kubectl logs -n streamspace deploy/streamspace-api -fAgent:
kubectl logs -n streamspace deploy/streamspace-k8s-agent -f
StreamSpace Quick Start