Zum Hauptinhalt springen

Administration

Dieser Bereich beschreibt die grundlegende Verwaltung und Konfiguration der edulution Plattform nach der Installation.


2.2.1 SSL-Zertifikate sichern

Es ist wichtig, Ihre SSL-Zertifikate regelmäßig zu sichern:

Backup erstellen und wiederherstellen
# Backup erstellen
tar -czf ssl-backup-$(date +%Y%m%d).tar.gz -C /srv/docker/edulution-ui/data/traefik ssl/

# Backup wiederherstellen
tar -xzf ssl-backup-20240115.tar.gz -C /srv/docker/edulution-ui/data/traefik/
tipp

Let's Encrypt Zertifikate können jederzeit neu generiert werden und müssen nicht zwingend gesichert werden.

2.3 Ports und Firewall

Die edulution Plattform verwendet folgende Ports:

PortProtokollBeschreibung
80/tcpHTTPWeiterleitung zu HTTPS
443/tcpHTTPSWeb-Interface (edulution Plattform)
143/tcpIMAPE-Mail unverschlüsselt (nur intern)
993/tcpIMAPSE-Mail verschlüsselt (SSL/TLS)

Firewall-Konfiguration (UFW):

UFW Konfiguration
# Ports öffnen
ufw allow 80/tcp
ufw allow 443/tcp
ufw allow 993/tcp

# IMAP nur intern erlauben
ufw allow from 10.0.0.0/8 to any port 143

2.4 Updates

2.4.1 edulution Plattform aktualisieren

gefahr

Erstellen Sie vor jedem Update einen Snapshot Ihrer VM!

Um die edulution Plattform zu aktualisieren:

  1. Wechseln Sie in das edulution Plattform Verzeichnis:

    cd /srv/docker/edulution-ui
  2. Laden Sie die neuesten Container-Images:

    docker compose pull
  3. Starten Sie die Container neu:

    docker compose up -d
  4. Überprüfen Sie, ob alle Container laufen:

    docker compose ps
hinweis

Das Update dauert in der Regel nur wenige Minuten. Die edulution Plattform bleibt während des Updates kurz nicht erreichbar.

2.4.2 Nach dem Update

Nach einem Update sollten Sie:

  1. Die Funktionalität der edulution Plattform testen
  2. Die Logs auf Fehler prüfen: docker compose logs -f --tail=50
  3. Bei Problemen können Sie über den VM-Snapshot zurückrollen
Update auf v2.0 oder neuer

Beim ersten Start nach dem Update verschlüsselt die API die gespeicherten Schlüssel und Passwörter mit einem Master-Schlüssel. Sichern Sie diesen Schlüssel unbedingt zusammen mit der Datenbank – siehe Master-Key-Verschlüsselung.

2.5 Erste Anmeldung und Konfiguration

2.5.1 Anmeldung als global-admin

Nach der erfolgreichen Installation können Sie sich an der edulution Plattform anmelden:

  1. Öffnen Sie einen Webbrowser und navigieren Sie zur edulution Plattform-URL
  2. Melden Sie sich als global-admin an, um Konfigurationen vorzunehmen
warnung

Verwenden Sie für die erste Anmeldung immer den global-admin Account, um alle administrativen Funktionen nutzen zu können.

2.5.2 Dashboard-Übersicht

Nach der erfolgreichen Anmeldung gelangen Sie zum Dashboard:

Das Dashboard bietet Ihnen:

  1. Überblick über alle installierten Services
  2. Schnellzugriff auf wichtige Funktionen
  3. Systemstatus und Benachrichtigungen
  4. Navigation zu den Einstellungen

2.5.3 Einstellungen aufrufen

Die Einstellungen finden Sie in der rechten Seitenleiste:

Über die Seitenleiste haben Sie Zugriff auf:

  • Container-Verwaltung
  • App Store
  • Systemkonfiguration
  • Benutzerverwaltung

2.5.4 App Store - Apps installieren

Der App Store ist der zentrale Ort für die Installation neuer Anwendungen:

  1. Klicken Sie in der Seitenleiste auf App Store
  2. Sie sehen eine Übersicht aller verfügbaren Apps

App-Status verstehen:

StatusBeschreibung
Verfügbar (farbig)App kann per Klick installiert werden
Installiert (ausgegraut)App ist bereits installiert und aktiv

App installieren:

  1. Klicken Sie auf eine verfügbare App
  2. Bestätigen Sie die Installation
  3. Warten Sie, bis die Installation abgeschlossen ist
  4. Die App erscheint dann ausgegraut als "Installiert"
tipp

Installierte Apps sind sofort über das Dashboard oder die Navigation verfügbar.

2.5.5 App-Installation und Konfiguration

App installieren:

  1. App auswählen: Klicken Sie auf das Icon der gewünschten App im App Store
  2. Hinzufügen: Klicken Sie unten links auf Hinzufügen
  3. Grundkonfiguration: Ein Popup öffnet sich, in dem Sie folgende Einstellungen vornehmen können:
    • Name: Anzeigename der App im Menü
    • Icon: Symbol für die App-Darstellung

Nach der Installation:

  1. Die App erscheint im rechten Menü (Navigation)
  2. Die App-Einstellungen finden Sie in der linken Seitenleiste (Einstellungen)
  3. Über die Einstellungen können Sie weitere Konfigurationen vornehmen

Erweiterte Konfiguration in den App-Einstellungen:

Nach der Installation können Sie in den App-Einstellungen folgende Parameter anpassen:

  • Position: Reihenfolge der App im Menü
  • Berechtigungen: Wer die App sehen und nutzen kann

Berechtigungen vergeben:

Die App-Berechtigung kann auf verschiedene Weise eingeschränkt werden:

BerechtigungBeschreibung
Alle BenutzerApp ist für alle sichtbar
Linuxmuster GruppenApp nur für ausgewählte Klassen/Gruppen (z.B. 5a, 10b, Lehrer-AG)
Linuxmuster RollenApp nur für spezifische Rollen:
teacher (Lehrkräfte)
student (Schüler)
schooladministrator (Schuladministrator)
globaladministrator (Global-Administrator)

Beispiel Info Board Konfiguration:

Das Screenshot zeigt die Berechtigungseinstellungen für das Info Board. Hier können Sie präzise festlegen, welche Benutzergruppen oder Rollen Zugriff auf die jeweilige App haben.

hinweis

Integration mit Linuxmuster: Die edulution Plattform nutzt die vorhandenen Gruppen und Rollen aus Ihrem Linuxmuster-System. Sie müssen keine separaten Berechtigungen pflegen.

2.6 App-Typen und Konfiguration

2.6.1 App Frame - Externe Webseiten einbinden

Mit dem App Frame können Sie externe Webseiten direkt in die edulution Plattform einbetten.

Konfiguration eines App Frames:

  1. Wählen Sie App Frame aus dem App Store
  2. Geben Sie die URL der zu framenden Seite ein
  3. Konfigurieren Sie Name und Berechtigungen
warnung

Wichtiger Hinweis: Die externe Webseite muss das Einbetten in Frames erlauben. Seiten mit strikten X-Frame-Options oder Content-Security-Policy können nicht geframt werden.

Beispiele für App Frame Nutzung:

  • Speiseplan der Schulkantine
  • Vertretungsplan
  • Externe Lernplattformen
  • Schulspezifische Dienste

Technische Voraussetzungen:

  • Die Ziel-URL muss über HTTPS erreichbar sein
  • Die Webseite darf keine Frame-Embedding-Beschränkungen haben
  • Die Seite sollte responsive Design unterstützen
tipp

Testen Sie App Frames zunächst in einem Browser-Tab, um sicherzustellen, dass die Seite korrekt angezeigt wird.

2.7 KI-Chat konfigurieren

Die edulution Plattform unterstützt OpenAI, Anthropic, Google Gemini, Ollama und OpenAI-kompatible Dienste. Ergänzen Sie die Variablen des gewünschten Anbieters in der .edulution.env im Installationsverzeichnis /srv/docker/edulution-ui.

Die Freigabe des KI-Chats für einzelne Nutzergruppen konfigurieren Sie anschließend unter Einstellungen → Chat (KI-Chat).

2.7.1 Unterstützte Anbieter

AnbieterAI_PROVIDERBenötigte anbieterspezifische Variable
OpenAI API (GPT-Modelle)openaiOPENAI_API_KEY
Anthropic (Claude)anthropicANTHROPIC_API_KEY
Google GeminigoogleGOOGLE_GENERATIVE_AI_API_KEY
OllamaollamaAI_OLLAMA_BASE_URL
OpenAI-kompatibler Dienst oder Gatewayopenai-compatibleAI_BASE_URL und je nach Dienst AI_API_KEY
warnung

Pro Installation kann nur ein Anbieter gleichzeitig ausgewählt werden. Alle Einträge in AI_MODELS müssen deshalb zum gewählten AI_PROVIDER gehören.

OpenAI und ChatGPT

Die Anbindung erfolgt über die OpenAI API, nicht über eine Anmeldung bei ChatGPT. Ein ChatGPT-Abonnement enthält nicht automatisch API-Nutzung. Dafür werden ein separater OpenAI-API-Schlüssel und eine gesonderte API-Abrechnung benötigt.

2.7.2 Gemeinsame Variablen

VariableBeschreibung
AI_PROVIDERAnbieter: openai, anthropic, google, ollama oder openai-compatible
AI_MODELSKommaseparierte Modell-IDs, die im KI-Chat ausgewählt werden können
AI_MODELStandardmodell; wird automatisch zusätzlich zur Modellauswahl hinzugefügt
AI_SYSTEM_PROMPTOptionale Systemanweisung, die bei jeder Chat-Anfrage mitgesendet wird
AI_REASONING_TAGSOptionale, kommaseparierte Tags wie think, deren Inhalte als Denkprozess dargestellt werden

Verwenden Sie die exakten Modell-IDs des jeweiligen Anbieters. Aktuelle Modell-IDs finden Sie in den Modellübersichten von OpenAI, Anthropic und Google Gemini.

2.7.3 OpenAI konfigurieren

.edulution.env
AI_PROVIDER=openai
OPENAI_API_KEY=<API_KEY>
AI_MODELS=gpt-5.6
AI_MODEL=gpt-5.6
AI_SYSTEM_PROMPT=Antworte immer in Markdown
AI_REASONING_TAGS=

Falls das angegebene Modell für Ihr OpenAI-Konto nicht verfügbar ist, verwenden Sie eine Modell-ID aus der OpenAI-Modellübersicht.

2.7.4 Anthropic konfigurieren

Erstellen Sie den benötigten Schlüssel in der Anthropic Console.

.edulution.env
AI_PROVIDER=anthropic
ANTHROPIC_API_KEY=<API_KEY>
AI_MODELS=claude-sonnet-5
AI_MODEL=claude-sonnet-5
AI_SYSTEM_PROMPT=Antworte immer in Markdown
AI_REASONING_TAGS=

2.7.5 Google Gemini konfigurieren

Erstellen Sie den benötigten Schlüssel in Google AI Studio.

.edulution.env
AI_PROVIDER=google
GOOGLE_GENERATIVE_AI_API_KEY=<API_KEY>
AI_MODELS=gemini-3.6-flash
AI_MODEL=gemini-3.6-flash
AI_SYSTEM_PROMPT=Antworte immer in Markdown
AI_REASONING_TAGS=

2.7.6 Ollama konfigurieren

Die Ollama-URL muss aus dem API-Container erreichbar sein und mit /v1 enden. Informationen zur Schnittstelle finden Sie in der Ollama-Dokumentation.

Prüfen Sie zunächst auf dem Ollama-Server, welche Modelle installiert sind:

ollama list

Tragen Sie anschließend den dort angezeigten Modellnamen ein:

.edulution.env
AI_PROVIDER=ollama
AI_OLLAMA_BASE_URL=http://<OLLAMA-HOST>:11434/v1
AI_MODELS=<OLLAMA-MODELLNAME>
AI_MODEL=<OLLAMA-MODELLNAME>
AI_SYSTEM_PROMPT=Antworte immer in Markdown
AI_REASONING_TAGS=

OLLAMA-HOST muss aus dem edulution-api-Container erreichbar sein. localhost bezeichnet innerhalb des Containers den Container selbst.

2.7.7 OpenAI-kompatiblen Dienst konfigurieren

Diese Variante eignet sich beispielsweise für selbst gehostete Gateways und andere Dienste mit einer OpenAI-kompatiblen API. Ein solcher Gateway kann gleichzeitig Modelle unterschiedlicher Hersteller anbieten:

.edulution.env
AI_PROVIDER=openai-compatible
AI_BASE_URL=https://gateway.example.org/v1
AI_API_KEY=<API_KEY>
AI_MODELS=MODELL-1,MODELL-2,MODELL-3
AI_MODEL=MODELL-1
AI_SYSTEM_PROMPT=Antworte immer in Markdown
AI_REASONING_TAGS=think

AI_INFO_API_KEY ist optional. Unterstützt der Dienst die Route /model/info, kann darüber die Kontextgröße der Modelle abgefragt und die Kontextauslastung angezeigt werden. Verwenden Sie dafür keinen Master-Schlüssel.

.edulution.env
AI_INFO_API_KEY=<INFO_API_KEY>

Lassen Sie AI_REASONING_TAGS leer, wenn das gewählte Modell keine entsprechenden Tags wie <think> ausgibt.

2.7.8 Container neu starten

Starten Sie die Container nach einer Änderung neu und prüfen Sie die Logs:

docker compose up -d
docker compose logs -f --tail=100
Sicherheit

Tragen Sie echte API-Schlüssel nur in die lokale .edulution.env ein. Veröffentlichen Sie diese niemals in der Dokumentation oder Versionsverwaltung.

Diese Seite richtet sich an eine andere Zielgruppe

Sie ist geschrieben für: Admin · Einrichtung, Admin · Betrieb. Ihre aktuelle Auswahl blendet sie deshalb aus.

Zur Übersicht