Frage zu Config Dateien bei Docker Migration

Hallo zusammen,

ich hoste, von zu Hause aus, eine öffentliche single Domain: meinecloud.de
Bisher als “normale” Installation direkt auf einem Ubuntu Server.
Bisher hatte ich dafür immer nur einen Apache Server genutz. Der hat alles allein erledigt (SSL Verschlüsselung, Weiterleitung zu HTTPS, etc.)
Diese alte Installation habe ich jetzt bis NC Version 20.0.10.1 aktualisiert. Lief bis dahin alles super.

Jetzt habe ich eine ganz frische Docker-Installation mit der selben NC Versions-Nummer eingerichtet. Die läuft auch schon, mit allen Zertifikaten, Redis und allem Pipapo. Allerdings läuft da ja jetzt ein zusätzlicher nginx Reverse Proxy.

Und jetzt bin ich etwas unsicher:

Der Import der alten Datenbank (mysqldump) in den DB Container scheint mir klar.

Frage 1:
Kann ich das bestehende Daten-Verzeichnis einfach mit einem Bind in den Container mappen?
Volume:

  • /mein/altes/datenverzeichnis:/bestehendes/container/verzeichnis

Und Frage2:
Wenn ich das gleiche auch für das Config Verzeichnis machen möchte, welche Teile der Configuration genau übernehme ich von der alten config und welche aus der neuen?

Wenn mir da wohl jemand einen Tipp geben könnte. Ich danke Euch schon mal.

wenn du ausreichend platz hast würde ich die Daten kopieren und den Container mit der Kopie starten…

Die Start Scripts von Docker passen die config.php (und andere…) anhand der verwendeten Umgebungsvariablen an… das was sie nicht anfassen bleibt wohl unverändert… In Prinzip ist die Migration auch nicht anders als Migration auf einen anderen Server

du solltest Daten, Configs, apps (und customapps) als unterschiedliche Volumes in den Container mappen… oder so wie sie in dem offiziellen docker-compose machen

    volumes:
      - nextcloud:/var/www/html

Danke dir @wwe ,

ich habe inzwischen viel gelesen. Ein kleines Problem ist, dass es sich um eine Jahre alte “produktiv” Instanz handelt. Die Daten liegen daher unter /home. Da habe ich auch 2 TB (HDD) Platz. Darüber nur einige 100 MB (SSD) für das OS.

Ich muss also in der Datenbank den Pfad zu den Daten an das Container FS anpassen. Dafür gibt’s hier irgendwo eine Anleitung.
Den Eintrag für das Datenverzeichnis in der config.php an das Container FS anpassen.
Alles andere lasse ich dann erstmal so, wie es ist.

Dann werde ich die Volumes so einrichten, wie in diesem Beispiel:

volumes:
- /home/nextcloud/config:/var/www/html/config
- /home/nextcloud/custom_apps:/var/www/html/custom_apps
- /home/nextcloud/data:/var/www/html/data
- /home/nextcloud/themes:/var/www/html/themes
- /etc/localtime:/etc/localtime:ro

Damit baue ich zunächst nur eine simple lokale Nextcloud:Apache Instanz.
Ziehe dann die Versionen schrittweise von 15.0.8 auf 20 hoch, und packe dann dann alles andere dazu (nginx Proxi, Redis, Letsencrypt)

Bin zuversichtlich :wink:

1 Like