#!/bin/bash # Branislav Zelak # v.01 - 2026-03-02 # --- VARIABLEN (Optional: Später in .env auslagern) --- NEXTCLOUD_IP="10.174.243.224" # --- DOCKER HOCHFAHREN --- echo "Starte Docker-Container..." docker compose up -d echo "Warte auf die Initialisierung von Nextcloud..." # Warteschleife: Prüft, ob Nextcloud fertig installiert ist until docker compose exec --user www-data app php occ status 2>/dev/null | grep -q "installed: true"; do echo -n "." sleep 5 done echo -e "\nNextcloud ist bereit. Starte Konfiguration..." # --- DATENBANK-OPTIMIERUNGEN --- echo "Optimiere Datenbank..." docker compose exec --user www-data app php occ db:add-missing-indices docker compose exec --user www-data app php occ db:convert-filecache-bigint --no-interaction docker compose exec --user www-data app php occ maintenance:repair --include-expensive # --- WARTUNGSFENSTER --- # Legt fest, dass schwere Aufgaben (wie App-Updates) um 01:00 Uhr nachts laufen docker compose exec --user www-data app php occ config:system:set maintenance_window_start --value=1 --type=integer # --- APPS INSTALLIEREN --- echo "Installiere Must-Have Apps..." apps=(calendar contacts notes deck circles groupfolders previewgenerator tasks) for app in "${apps[@]}"; do echo "Installiere App: $app..." docker compose exec --user www-data app php occ app:install "$app" --no-interaction done # --- VORSCHAU-OPTIMIERUNG --- echo "Konfiguriere Vorschaubilder (Performance)..." docker compose exec --user www-data app php occ config:system:set preview_max_x --value 1024 docker compose exec --user www-data app php occ config:system:set preview_max_y --value 1024 # --- HINTERGRUNDAUFGABEN (CRON) --- echo "Stelle Hintergrundaufgaben auf Cron um..." docker compose exec --user www-data app php occ background:cron echo "Führe ersten Cron-Job manuell aus..." docker compose exec --user www-data cron php -f /var/www/html/cron.php echo "----------------------------------------------------" echo "Setup erfolgreich abgeschlossen!" echo "Nextcloud ist unter http://${NEXTCLOUD_IP}:8080 erreichbar." echo "----------------------------------------------------"