Die Basis-URL der API wurde bisher aus dem Port der Seite abgeleitet (office.html: `if (location.port === "8090")`). Laeuft das Frontend hinter anderen Ports - in Produktion 4443 (web) / 4444 (api) - griff die Bedingung nicht, der relative Default /api/v1 lief gegen den Webserver ins Leere, und die Szene fiel still auf Demo-Daten zurueck: fremde Agenten-Namen und erfundene Ticketzahlen bei gleichzeitig leeren Detail-Modals. Die URL kommt jetzt aus MONITOR_API_BASE (.env, Default passend zum Port-Mapping in docker-compose.yml). Der Webserver liefert den Wert zur Laufzeit als /config.js aus; das nginx-Image setzt ihn beim Start per envsubst in die Config ein (default.conf -> default.conf.template). Damit bleibt html/ ein rein statisches, read-only gemountetes Verzeichnis - kein Build-Schritt, kein eigenes Entrypoint-Skript. Ein leerer Wert bedeutet "gleicher Origin" und faellt auf /api/v1 zurueck. Zusaetzlich macht ein roter Banner "API nicht erreichbar!" den Demo-Fallback sichtbar, statt ihn wie bisher stillschweigend als echte Daten auszugeben. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
18 lines
918 B
Text
18 lines
918 B
Text
# Kopieren nach .env und Werte anpassen. Wird von docker-compose.yml gelesen.
|
|
|
|
# Administrator-Key zur Registrierung neuer Agenten (POST /api/v1/agents, Header X-Admin-Key)
|
|
MONITOR_ADMIN_API_KEY=change-me
|
|
|
|
# Basis-URL, unter der das Frontend (Browser!) die REST-API erreicht. Der Default passt zum
|
|
# Port-Mapping des api-Service in docker-compose.yml (8091). Wer die Ports dort aendert oder
|
|
# das System hinter einem Reverse Proxy betreibt, muss diesen Wert entsprechend nachziehen -
|
|
# z.B. https://monitor.example.org:4444/api/v1.
|
|
# Leer lassen, wenn Frontend und API unter demselben Origin ausgeliefert werden (dann wird
|
|
# die relative URL /api/v1 verwendet).
|
|
MONITOR_API_BASE=http://localhost:8091/api/v1
|
|
|
|
# Codeberg-Repo, aus dem Backlog/Done per Sync-Skript befuellt werden
|
|
CODEBERG_OWNER=fds2610
|
|
CODEBERG_REPO=monitor
|
|
# Optional: Token mit Lesezugriff, falls Rate-Limits ohne Token zu knapp sind
|
|
CODEBERG_TOKEN=
|