Licensed to be used in conjunction with basebox, only.
// installation
Lokaler Schnellstart (basebox.local)
Gilt für
Produkt: Server (Evaluierung) · Zielgruppe: Platform Operator
Dies ist der kürzeste Evaluierungsweg für basebox auf einem vorbereiteten Einzelknoten-Kubernetes-Cluster.
Nutzen Sie diesen Modus für Vorführungen, Validierung, interne Tests und erste lokale Installationen.
Nicht für den Produktivbetrieb
Die Schnellstart-Installation ist nicht für den Produktiveinsatz gedacht.
Eine produktionsreife Installation beschreibt Helm Charts verwenden.
Was installiert wird
- ein Hostname:
basebox.local - lokaler/selbst verwalteter TLS-Modus
- automatische Bootstrap-Secrets
- automatische Datenbank-Cluster
- automatischer OIDC-Bootstrap
- lokale Standard-Storage-Class:
local-path
Das ist eine Schnellstart-Topologie, keine Produktionstopologie.
Für öffentliche Domains, cert-manager oder kundeneigenes TLS nutzen Sie Helm Charts verwenden.
Voraussetzungen
- Kubernetes-Cluster bereits vorbereitet
kubectlundhelmauf Ihrer Workstation installiert- CloudNativePG-Operator im Cluster installiert
- Ingress-Controller im Cluster installiert
- NVIDIA-GPU-Unterstützung im Cluster für Inferenz- und RAG-Dienste installiert
- der Browser der Workstation löst
basebox.localauf Ihre Ingress- oder Knoten-IP auf
Schritt 1: Kubeconfig setzen
Schritt 2: basebox.local auf den Cluster zeigen lassen
Fügen Sie auf der Workstation, auf der Sie den Browser öffnen, einen /etc/hosts-Eintrag hinzu:
Prüfen:
Schritt 3: Optionaler OCI-Registry-Login
helm registry login gitea.basebox.health -u pacman
# If this prompts for a password, use ee4d3d1bad18cae07a1817701d2281f6fbf8aa2f
Funktioniert der anonyme OCI-Pull in Ihrer Umgebung, ist dieser Schritt optional.
Schritt 4: basebox installieren
helm upgrade --install basebox oci://gitea.basebox.health/basebox-distribution/helm/basebox.ai \
--version 0.3.32 \
-n basebox \
--create-namespace \
--wait \
--timeout 120m
Was dabei geschieht:
- der Namespace
baseboxwird angelegt - Bootstrap-Zugangsdaten werden automatisch erzeugt
- das lokale TLS-Secret wird automatisch angelegt, falls es noch nicht existiert
- der vollständige basebox-Stack wird installiert
- OIDC wird für
https://basebox.localkonfiguriert
Schritt 5: Auf Pods und Bootstrap-Job warten
kubectl -n basebox get pods
kubectl -n basebox wait --for=condition=complete job/idp-keycloak-bootstrap --timeout=10m
Erwartet:
- Dienst-Pods werden
Running idp-keycloak-bootstrapwird erfolgreich abgeschlossen
Schritt 6: Anmeldedaten holen
Login für die Oberfläche:
kubectl -n basebox get secret basebox-admin-secret \
-o jsonpath='{.data.ADMIN_EMAIL}' | base64 -d && echo
kubectl -n basebox get secret basebox-admin-secret \
-o jsonpath='{.data.ADMIN_PASSWORD}' | base64 -d && echo
Keycloak-Admin-Passwort:
kubectl -n basebox get secret keycloak-admin-secret \
-o jsonpath='{.data.KEYCLOAK_ADMIN_PASSWORD}' | base64 -d && echo
Die Standard-E-Mail ist in der Regel:
Schritt 7: Smoke-Checks
kubectl -n basebox get ingress
curl -k -X POST https://basebox.local/graphql \
-H 'Content-Type: application/json' \
-H 'X-Realm: primary' \
--data-binary '{"query":"query { __typename }"}'
Erwartete Antwort:
Im Browser öffnen:
Hinweis zum Zertifikat
Standardmäßig erzeugt der lokale Modus automatisch ein selbstsigniertes TLS-Secret.
Das reicht für Installation und Backend-OIDC-Bootstrap, Ihr Browser zeigt aber eine Zertifikatswarnung, solange Sie das Secret nicht durch ein lokal vertrauenswürdiges Zertifikat ersetzen.
Wollen Sie ein vertrauenswürdiges lokales Browser-Zertifikat, legen Sie basebox-local-tls vor der Installation selbst an, zum Beispiel mit mkcert. Das Chart behält das bestehende Secret und überschreibt es nicht.
Troubleshooting
https://basebox.local/graphqlliefert404:/etc/hostsund Ingress-IP auf Übereinstimmung prüfen- Inferenz-Pod bleibt
Pending: - GPU-Ressourcenverfügbarkeit auf dem Knoten prüfen
- Browser-Anmeldeseite scheitert nach der Installation:
- prüfen, dass
basebox.localauf denselben Ingress auflöst, auf dem installiert wurde - Image-Pulls auf Cluster-Knoten scheitern:
- Registry-Zugang der Runtime auf Knotenseite prüfen