| Filename | Latest commit message | Latest commit date |
|---|---|---|
WebServer mit Admin-Panel. - WebServer auf v0.3.3 gehoben: Aushang-/Alarm-Verwaltung unter /admin, serverseitiger Zustand, Crossfade-Uebergaenge. |
||
| .gitignore | ||
| docker-compose.yml | ||
| README.md | ||
schuelerapp-fullstack
Vereint die zwei VPlan-Container in einer docker-compose.yml:
- vplan-parser -- laedt den
Schul-Vertretungsplan herunter und wandelt ihn in
vertretungen.jsonum. - vplan-webserver -- macht
daraus eine Webseite mit drei Ansichten sowie eine Aushang-/Alarm-Verwaltung unter
/admin/.
Beide teilen sich ./data/json: der Parser schreibt, der WebServer liest
(nur lesend). Ein docker compose up -d startet die komplette Kette.
vplan-parser --schreibt--> ./data/json/vertretungen.json --liest--> vplan-web --> http://<server>:8080/
| Bestandteil | Version |
|---|---|
| FullStack (dieses Paket) | 0.3.0 |
| vplan-parser | 0.1.1 |
| vplan-webserver | 0.3.3 |
Setup / Installation
1. Docker vorhanden?
docker version
2. Bei der Registry anmelden (einmalig)
docker login git.pablo1732.de
3. Einstellungen anpassen
In der docker-compose.yml mindestens die Serveradresse setzen (Service vplan-parser):
DOWNLOAD_URL: "http://192.168.2.11" # <- IP/Adresse deines Vertretungsplan-Servers
Und im Service vplan-web ein echtes Passwort fuers Admin-Panel setzen (sonst
ist der Login deaktiviert):
ADMIN_PASSWORD: "bitte-aendern" # <- eigenes Passwort statt des Platzhalters
4. Starten
docker compose pull
docker compose up -d
Anzeige unter http://<server>:8080/ (lokal: localhost).
Kontrolle: docker compose logs -f (mit Strg+C wieder raus).
Bedienung / Anpassung
docker compose up -d # startet beide im Hintergrund
docker compose logs -f # Live-Logs beider Container
docker compose down # stoppt und entfernt beide Container
docker compose restart # beide neu starten
Nur einen Container ansprechen? Namen anhaengen, z.B. docker compose logs -f vplan-parser.
Einstellungen
Details zu allen Variablen: siehe README der jeweiligen Einzel-Repos (vplan-parser, vplan-webserver).
| Einstellung | Standard | Bedeutung |
|---|---|---|
INTERVAL_SECONDS |
30 |
Sekunden zwischen zwei Parser-Durchlaeufen. |
DOWNLOAD_URL |
http://192.168.2.11 |
IP/Webadresse des Vertretungsplan-Servers. |
POLL_SECONDS |
20 |
Sekunden zwischen zwei Pruefungen auf neue vertretungen.json. |
ADMIN_PASSWORD |
bitte-aendern |
Passwort fuers Admin-Panel. Leer = Login deaktiviert. |
Die drei Ansichten
/schueler/-- gruppiert nach Klassen/Jahrgangsstufen./lehrer_sort_stunden/-- gruppiert nach Unterrichtsstunde./lehrer_sort_lehrkraft/-- gruppiert nach Lehrkraft.
Aushang-Verwaltung (Admin-Panel)
Unter http://<server>:8080/admin/ meldet sich die Schulleitung an und kann
Aushaenge (Bilder/PDFs/Textmeldungen) schalten sowie Feueralarm/Amok ausloesen.
Details: siehe README von vplan-webserver.
Keine/veraltete Daten in der Anzeige?
- "Keine Plandaten geladen": Der WebServer findet keine
vertretungen.json. Laeuft der Parser? (docker compose logs -f vplan-parser) - "Plan veraltet": Die JSON enthaelt nur vergangene Tage -- normal, wenn gerade kein aktueller Plan vorliegt.