Handbuch · 10

Remote-Instanzen & Headless

Eine lokale IllusionDB kann direkt auf einer anderen Instanz arbeiten – typischerweise auf deinem Online-Server. Die Oberfläche kommt dabei immer aus der lokalen Installation, jede Datenänderung landet aber sofort auf dem Server. Der Server selbst braucht dann keine eigene Weboberfläche mehr: seine Admin-Oberfläche lässt sich abschalten, sodass dort nur noch die REST-API als Headless-Dienst läuft.

Verbindung einrichten

  1. Auf dem Server: unter Einstellungen → Mein Konto einen API-Token für ein Admin-Konto anlegen und kopieren.
  2. Lokal: Einstellungen → Remote-Instanzen → Neue Verbindung. Name, Adresse (z. B. https://db.example.com) und den Token eintragen. Der Token wird verschlüsselt gespeichert und danach nie wieder angezeigt.
  3. In der Spalte Zustand prüft IllusionDB sofort, ob der Server erreichbar ist, ob der Token gilt und einem Admin gehört und ob beide Seiten dieselbe Version haben.

Remote-Verbindungen kann nur ein Admin anlegen und nutzen.

Zwischen Instanzen umschalten

Oben in der Seitenleiste sitzt der Umschalter: Lokal oder eine deiner Verbindungen. Ist eine Verbindung aktiv, wird der Umschalter gelb mit dem Hinweis LIVE, und über jeder Seite steht ein Banner – jede Änderung wirkt sofort auf dem Server. Rot wird der Umschalter, wenn der Server nicht erreichbar ist oder eine andere Version hat; aktualisiere dann beide Seiten auf dieselbe Version.

Im Live-Modus kommt alles vom Server: Datenquellen, Tabellen, Ansichten, Dateien, Skripte, Benutzer, Gruppen und Berechtigungen. Lokal bleiben nur dein eigener Login, dein Konto (Passwort, eigene API-Tokens) und die Verwaltung der Remote-Verbindungen selbst. Auf dem Server handelst du mit den Rechten des Kontos, dem der Token gehört.

Admin-Oberfläche abschalten (Headless)

Unter Einstellungen → Remote-Instanzen → Admin-Oberfläche lässt sich die Weboberfläche der Instanz abschalten, auf der du gerade arbeitest – im Live-Modus also die des Servers. Danach gilt dort:

  • keine Weboberfläche, kein Login, kein Einrichtungsassistent – es gibt keine Login-Seite mehr, die jemand durchprobieren könnte;
  • laufende Browser-Sitzungen enden sofort;
  • die REST-API mit API-Token, eigene Skript-Endpunkte, öffentlich lesbare Tabellen und /healthz laufen unverändert weiter.

Abschalten geht nur, wenn auf der Instanz ein API-Token eines Admin-Kontos existiert (oder ein MASTER_TOKEN gesetzt ist) – sonst käme danach niemand mehr heran. Wieder einschalten kannst du die Oberfläche jederzeit lokal über die Verbindung: Server im Umschalter wählen, Einstellungen → Remote-Instanzen → Admin-Oberfläche einschalten.

Notfall-Wege und Umgebungsvariablen

Variable / Befehl Wirkung
HEADLESS=true Schaltet die Admin-Oberfläche fest ab, unabhängig von der Einstellung. Lässt sich nicht über die Oberfläche ändern.
MASTER_TOKEN=<mind. 32 Zeichen> Zusätzlicher Admin-Token nur aus der Umgebung, ohne Datenbankeintrag. Der Weg zurück, falls alle API-Tokens weg sind: setzen, neu starten, lokal verbinden, Oberfläche wieder einschalten. Erzeugen z. B. mit openssl rand -base64 32.
illusiondb -enable-admin Schaltet die Oberfläche direkt auf dem Server wieder ein und beendet sich; danach IllusionDB normal neu starten. Im Docker-Container: docker compose exec illusiondb /app/illusiondb -enable-admin, dann den Container neu starten.