11 Commits
Author SHA1 Message Date
Patrick Asmus 9a19e40e3d fix(ci): Image explizit fuer linux/amd64 bauen
Build & Push Docker Image / build-and-push (push) Successful in 1m58s
Das Image v1.4.0 wurde auf einem arm64-Runner gebaut und startet auf
amd64-Hosts nicht (exec format error). Ich baue jetzt per buildx mit
--platform linux/amd64 (QEMU als Fallback). docker-compose.yml zeigt auf
1.4.1.
2026-11-01 17:22:27 +01:00
Patrick Asmus 7578e72334 docs: PHP-8-Hinweis in README, Image-Tag auf 1.4.0
Build & Push Docker Image / build-and-push (push) Successful in 1m45s
Ich weise in der README auf den Umstieg auf PHP 8.4 hin und bitte darum,
auftretende Fehler als Issue zu melden. docker-compose.yml zeigt jetzt
auf das Image 1.4.0.
2026-11-01 17:14:51 +01:00
Patrick Asmus 8b6a34e8d1 fix(xaseco): Neustart-Schleifen durch TS3-Plugin und Dedimania beheben
- tsstatus.php: ungefangene Exception bei fehlerhafter TS3-Query-Antwort
  beendete XAseco (auch unter PHP 7, live 58x im Log); jetzt leere Antwort
- XAsecoHealthcheck.sh: Webaccess-/Dedimania-Verbindungsfehler nicht mehr
  als XAseco-Fehler werten; das nicht erreichbare dedimania.net loeste
  sonst alle ~30 Minuten einen Neustart aus
2026-11-01 17:06:59 +01:00
Patrick Asmus 96798c2db6 fix(php8): AdminServ MatchSettings-Erstellung und Zeitlimit-Ueberlauf beheben
- folder.class.php: @array_slice(@stat()) brach unter PHP 8 mit TypeError
  ab, wenn Map-Dateinamen Sonderzeichen enthalten (MatchSettings erstellen
  -> HTTP 500)
- timedate.class.php: secToMillisec() auf int32 begrenzen; LapsTimeLimit
  wird in ms angezeigt und beim Speichern erneut mit 1000 multipliziert,
  der Server lehnte 2147483647000 ab (bestehender AdminServ-Bug)
2026-11-01 14:07:01 +01:00
Patrick Asmus 9f8f0f00d6 fix(php8): RemoteCP-Log-Rauschen reduzieren und errors.log rotieren
Unter PHP 8 sind viele fruehere Notices (Undefined array key, Attempt to
read property ...) Warnings. Der RemoteCP-Errorhandler ignoriert diese
ohne Debug-Modus wie bisher unter PHP 7; im Test wuchs errors.log sonst
um rund 500 KB in 15 Minuten. Zusaetzlich rotiere ich remotecp/cache/*.log
per logrotate (10 MB, 5 Dateien).
2026-11-01 13:51:55 +01:00
Patrick Asmus 1ecb6c93b3 fix(php8): statische Aufrufe, XAseco-Webaccess und TS3-count() fuer PHP 8 anpassen
- Php8Compat.php: nicht-statische Methoden, die als Klasse::methode()
  aufgerufen werden und kein $this nutzen, als static markieren
  (RemoteCP Core/Plugins, AdminServ Zip)
- web_access.inc.php: Response als array() statt '' initialisieren
  (behebt Illegal string offset in web_access, xmlrpc_db, mania_karma)
- plugin.teamspeak3.php: count() auf null entschaerft
2026-11-01 13:25:23 +01:00
Patrick Asmus b13b524ad5 feat(php8): Umstieg auf Debian Trixie mit PHP 8.4 (WIP)
PHP 7.4 ist seit 2022 EOL und bekommt keine Fixes mehr (u. a. PHP2Shell,
CVE-2026-109618/109619). Ich stelle das Image deshalb auf debian:trixie-slim
mit PHP 8.4.27 um.

- Php8Compat.php: ergaenzt __construct() fuer PHP-4-Konstruktoren und stellt
  String-Offsets $str{0} auf $str[0] um (AdminServ, RemoteCP, XAseco)
- RunTrackmaniaServer.sh: Patcher bei jedem Start auf die Volumes anwenden,
  mysqli_report(MYSQLI_REPORT_OFF) fuer den mysql_*-Shim von XAseco
- Bullseye-Archive-Repositories entfernt
2026-11-01 13:16:00 +01:00
Patrick Asmus 5ca2f1587f fix(remotecp): PHP-7.4-Deprecations beheben und PHP_DISPLAY_ERRORS respektieren
RemoteCP 4.0.3.5 hat nach jedem Neustart Deprecation-Meldungen oben auf der
Seite ausgegeben, obwohl PHP_DISPLAY_ERRORS=false gesetzt war.

Ich patche RemoteCP jetzt bei jedem Containerstart idempotent (greift auch
bei bestehenden Volumes):
- rcp_textparser.class.php: $hex{n} -> $hex[n], TMFColorParser-Konstruktor
  auf __construct() umgestellt
- GbxRemote.inc.php: $f_v{n} -> $f_v[n]
- core.functions.php: display_errors/display_startup_errors an
  PHP_DISPLAY_ERRORS gekoppelt statt hart auf 1; PHP-Warnings werden ohne
  Debug-Modus nur noch in cache/errors.log geschrieben
2026-11-01 12:47:14 +01:00
Patrick Asmus 592f047274 fix(docker): Debian Bullseye Archive-Repositories fuer Paketinstallation nutzen
Build & Push Docker Image / build-and-push (push) Successful in 1m18s
2026-10-31 11:36:15 +01:00
Patrick Asmus d550e814e2 fix: AdminServ Schreibrechte fuer ./logs/ und Configs bei Containerstart sicherstellen (Fixes #19)
Build & Push Docker Image / build-and-push (push) Failing after 20s
AdminServ erfordert zwingend Schreibrechte auf ./logs/ (777) und die Konfigurationsdateien (666). Das fruehere automatische Zuruecksetzen auf 755 fuehrte nach Reboots oder Wiederherstellung von Backups zum Fehler 'path was not required rights: ./logs/'. Bei jedem Start werden nun 777 und www-data Ownership fuer ./logs/ sichergestellt.
2026-10-31 11:27:30 +01:00
Patrick Asmus 9ac5c997a2 feat: Upgrade ip-watcher Image auf alpine:3.24 und Netzwerk-Ports aktualisiert
Upgrade des ip-watcher Hilfscontainers von alpine:3.21 auf alpine:3.24. Zudem Web-Port auf 16080 umgestellt, P2P UDP 3450 hinzugefügt und lokales Subnetz aktualisiert.
2026-10-31 11:06:48 +01:00