Der Eduxel Installer ist ein vollautomatisierter Installer für die Eduxel Server Application.
Er richtet den kompletten Server-Stack ein – von Java über Datenbank bis Webserver – und startet die Anwendung produktionsbereit.
Ziel: Ein Befehl. Alles läuft.
Kein manuelles Setup, kein Copy-Paste-Chaos, kein Gefrickel.
• Automatische Installation von Java 25 (Eclipse Temurin)
• Download der aktuellen eduxel.jar aus GitHub Releases
• Einrichtung eines systemd-Services mit Autostart
• Eigene CLI (eduxel)
• MariaDB Setup (automatisch oder manuell)
• Apache & Caddy inkl. Reverse Proxy und HTTPS
• DNS-Check für Domains (A-Record)
• Website-Deployment (GitHub Repo → npm install → npm run build → Deploy)
• Update-fähig über GitHub Releases
• Saubere Logs und klare Statusmeldungen
� Installations-Wizard (eduxel install --wizard)
� eduxel doctor fuer Systemdiagnose
� Logrotation + eduxel logs --tail
� Auto-Updates via systemd-timer
� Canary-Updates auf separatem Port
• Linux Server (empfohlen: Ubuntu oder Debian)
• Root-Zugriff (sudo)
• Internetverbindung
• Optional: eine Domain für Web- und HTTPS-Setup
Der empfohlene Weg ist die Installation über den offiziellen Proxy-Endpunkt:
curl -fsSL https://edu-core.dev/i | bash
Der Installer lädt automatisch die neueste Version aus den GitHub Releases.
Parameter können direkt an den Installer übergeben werden.
Alles nach dem zweiten -- wird an das Java-CLI weitergereicht.
Beispiel mit Domain und Website-Repository:
curl -fsSL https://edu-core.dev/i | bash -s -- -- --domain panel.example.com --repo https://github.com/OWNER/website.git --branch main
Diese Optionen betreffen den Bootstrap-Installer selbst:
• --release-repo OWNER/REPO
GitHub Repository, aus dem das Release geladen wird
• --tag latest
Release-Tag (z. B. latest oder v1.0.0)
• --jar-asset eduxel.jar
Name des JAR-Assets im Release
• --user eduxel
Linux-User, unter dem der Service läuft
• --no-java-install
Überspringt die Java-Installation
Diese Optionen werden direkt an die Java-Anwendung weitergereicht:
� --wizard
Interaktiver Wizard fuer Domain, DB, Webstack, Repo, Branch
� --app-port PORT
Port fuer den Credential Server
• --domain DOMAIN
Domain für Web- und HTTPS-Setup
• --repo URL
GitHub Repository für die Website
• --branch NAME
Branch für das Website-Deployment
• --skip-web
Überspringt das Webserver-Setup
• --skip-mariadb
Überspringt das MariaDB-Setup
• --allow-no-dns
Ignoriert DNS-Mismatch (nur Warnung)
Nach der Installation läuft Eduxel als systemd-Service.
Wichtige Befehle:
• systemctl status eduxel
• systemctl restart eduxel
• eduxel logs --tail
CLI verwenden:
� eduxel logs
� eduxel doctor
• eduxel info
• eduxel install
• eduxel update
• eduxel reset
• Anwendung: /opt/eduxel/eduxel.jar
• Konfiguration: /etc/eduxel/
• Service: /etc/systemd/system/eduxel.service
• CLI: /usr/local/bin/eduxel
Der eduxel update Befehl prüft automatisch auf Änderungen und führt notwendige Updates durch:
eduxel updateFeatures:
� Changelog: Release Notes vor Updates anzeigen
� Config-Diff: Vergleich mit letztem Backup
� Canary-Update: Startet Canary-Instanz auf separatem Port
� Auto-Updates: systemd Timer fuer Updates
• Versionsprüfung: Checkt ob eine neue Version verfügbar ist
• Änderungserkennung: Erkennt automatisch, was sich geändert hat:
- Landing Page (HTML/CSS/JS Updates)
- Service-Dateien (systemd)
- JAR-Dateien in /opt/eduxel/
• Interaktive Bestätigung: Zeigt alle Änderungen an und fragt nach Bestätigung
• Automatischer Modus: Mit--yesoder-yalle Änderungen automatisch anwenden
• Check-Only Modus: Mit--check-onlynur prüfen, keine Änderungen durchführen
Beispiele:
# Auto-Updates aktivieren (taeglich)
eduxel update --enable-timer
# Auto-Updates deaktivieren
eduxel update --disable-timer
# Canary-Release auf Port 45822 starten
eduxel update --canary --canary-port 45822
# Changelog explizit anzeigen
eduxel update --show-changelog# Interaktiv: Änderungen anzeigen und bestätigen
eduxel update
# Automatisch: Alle Updates ohne Nachfrage durchführen
eduxel update -y
# Nur prüfen: Keine Änderungen durchführen
eduxel update --check-onlyWas wird geprüft:
- Version Check: Vergleicht lokale Version mit neuester Version auf GitHub
- Landing Page: Prüft ob die Landing Page mit der aktuellen Version übereinstimmt
- Service Files: Prüft ob systemd Service-Dateien vorhanden und aktuell sind
- JAR Installation: Prüft ob eduxel.jar in /opt/eduxel/ vorhanden ist
Updates können auch manuell über GitHub Releases erfolgen:
# JAR herunterladen
wget https://github.com/OWNER/REPO/releases/latest/download/eduxel.jar -O /opt/eduxel/eduxel.jar
# Service neustarten
systemctl restart eduxelDer Installer benötigt Root-Rechte, da Systemdienste, Benutzer und Server-Software eingerichtet werden.
Bitte nur auf vertrauenswürdigen Systemen ausführen.
Eduxel ist ein Projekt der EduCore Development.
Feedback, Issues und Pull Requests sind willkommen.