Docker Compose mit drei Services (nginx auf Port 8000), Migrationsmechanik, Update- und Backup-Skript. Anwendung: Router mit CSRF-Prüfung, Anmeldung und Ersteinrichtung, zentraler Einstellungsdialog mit Reitern, ein- und ausschaltbares Debug-Log mit Maskierung von Zugangsdaten. Layout nach Vorbild des FinanzManagers: feste Navigation links, Werkzeugleiste oben, Tab-Leiste; Farbschema hell/dunkel/System. Tests: 51 PHP-Prüfungen und 7 Playwright-Tests, alle grün.
17 lines
611 B
Bash
Executable file
17 lines
611 B
Bash
Executable file
#!/usr/bin/env bash
|
||
set -euo pipefail
|
||
|
||
# Datenverzeichnisse existieren auch dann, wenn sie per Bind-Mount frisch
|
||
# hereinkommen – und gehören www-data, sonst scheitert das erste Schreiben.
|
||
mkdir -p /var/www/html/data/logs /var/www/html/data/import
|
||
chown -R www-data:www-data /var/www/html/data
|
||
|
||
# Migrationen laufen bei jedem Start. Sie sind idempotent, ein zweiter Lauf
|
||
# ändert nichts.
|
||
if [ -f /var/www/html/scripts/migrate.php ]; then
|
||
php /var/www/html/scripts/migrate.php || {
|
||
echo "Migration fehlgeschlagen – Container startet trotzdem, damit man nachsehen kann." >&2
|
||
}
|
||
fi
|
||
|
||
exec "$@"
|