Hier ist ein unkomplizierter Weg, um eine Nextcloud All-in-One (AIO) Installation auf eine neue Domain zu migrieren:
## **Vorbereitung**
1. **Backup erstellen**
- Nextcloud AIO Backup-Tool verwenden:
```bash
sudo docker exec -it nextcloud-aio-nextcloud bash
occ maintenance:mode --on
```
- Backup-Verzeichnis sichern (standardmäßig `/var/lib/docker/volumes/nextcloud_aio_backup`)
## **Hauptschritte**
### **1. Domain in Reverse-Proxy aktualisieren**
```bash
# AIO-Container stoppen
sudo docker stop nextcloud-aio-nextcloud
# Reverse-Proxy Konfiguration anpassen
# Datei: /var/lib/docker/volumes/nextcloud_aio_apache/_data/nginx.conf
# Alle Vorkommen der alten Domain durch neue ersetzen
```
### **2. Nextcloud-Konfiguration aktualisieren**
```bash
# config.php anpassen
sudo docker exec -it nextcloud-aio-nextcloud bash
nano /var/www/html/config/config.php
```
Ändern:
```php
'trusted_domains' => [
0 => 'neue-domain.de',
],
'overwrite.cli.url' => 'https://neue-domain.de',
'overwritehost' => 'neue-domain.de',
```
### **3. Let's Encrypt Zertifikat erneuern**
```bash
# ACME-Challenge-Verzeichnis leeren (falls vorhanden)
sudo rm -rf /var/lib/docker/volumes/nextcloud_aio_letsencrypt/_data/.well-known/acme-challenge/*
# Container neu starten
sudo docker start nextcloud-aio-nextcloud
# Zertifikat neu ausstellen
sudo docker exec nextcloud-aio-nextcloud bash -c "apachectl graceful && sleep 5 && certbot renew"
```
### **4. Database Updates (falls nötig)**
```bash
sudo docker exec -it nextcloud-aio-nextcloud bash
occ maintenance:repair
occ db:convert-filecache-bigint
```
## **DNS-Einstellungen**
1. **A/AAAA-Record** auf neue IP zeigen lassen
2. **TXT-Record** für Let's Encrypt vorhanden lassen
3. **Propagationszeit** (bis zu 48h) einplanen
## **Nach der Migration**
1. **Maintenance-Mode ausschalten**
```bash
occ maintenance:mode --off
```
2. **Cron-Job prüfen**
3. **Externe Speicher/Apps** auf korrekte Domain prüfen
4. **Mobile Clients** neu verbinden
## **Wichtigste Hinweise**
- **Keine Daten gehen verloren** - nur Domain-Referenzen ändern
- **Kein MySQL-Dump** nötig bei AIO
- **Share-Links bleiben erhalten**, wenn `overwrite.cli.url` korrekt gesetzt ist
- **Email-Server** Einstellungen prüfen, falls Nextcloud Mail verwendet wird
Der ganze Prozess dauert normalerweise **15-30 Minuten**, hauptsächlich abhängig von der DNS-Propagation.
Bei Problemen einfach den AIO-Container mit der alten Domain zurückschalten, bis alle Tests erfolgreich sind.