Data directory der Nextcloud

Fehlt was? Gibt es Probleme. Hier finden wir eine Lösung!
ManEn
User
User
Beiträge: 8
Registriert: Mi 9. Nov 2022, 19:45

Data directory der Nextcloud

Beitrag von ManEn »

Hallo Felix & Community,
zuerst einmal vielen herzlichen Dank für deine Mühen, Videos, den ganzen Support und natürlich das tolle Installationsskript - großes Lob an dich!

Ich hatte mir neulich einen Rpi4 zugelegt und diesen im Zuge meiner SmartHome-Aufrüstung mit deinem Skript gefüttert, allerdings geht meine Frage gar nicht um SmartHome darüber, denn:
Ich hatte vorher auf einem Rpi2 schon eine Nextcloud (ohne Docker) laufen, welche mir die Daten auf einer zusätzlichen/externen SSD abgelegt hatte. Das würde ich jetzt am liebsten wieder so machen. Gibt's denn dafür eine Möglichkeit? Also quasi die nextcloud (Sowohl Daten als auch "config-Kram") auf die ssd schieben während der Rest (NodeRed/influxdb/bitwarden/pihole etc.) weiter auf der SD läuft? Ich habe gesehen, dass du im Blog auch den Ansatz hast, einfach die gesamte sd auf die ssd zu spiegeln und den Rpi von der SSD laufen zu lassen, allerdings soll der Rpi möglichst auch ohne ssd weiterhin funktionieren, für den Fall dass diese mal anderweitig verwendet werden sollte.
Außerdem habe ich schon versucht mich im Netz durchzugooglen aber ich habe einfach noch zu wenig Ahnung von Docker und wie die Konfiguration im Skript ist. Ich dachte schon über eine (skript-externe und/oder -interne) Neuinstallation der NC nach, möchte aber wie gesagt nicht das ganze System zerschießen.

Viele Grüße & vielen Dank
Manuel

Benutzeravatar
ei23felix
Administrator
Administrator
Beiträge: 291
Registriert: Sa 17. Jul 2021, 10:44
Kontaktdaten:

Re: Data directory der Nextcloud

Beitrag von ei23felix »

Hi Manuel und danke für das Lob!

Es gäbe die Möglichkeit die SSD beim Start in dein System zum mounten und anschließend noch die docker-compose.yml anzupassen.

Die Volumes von Nextcloud sind normal so

Code: Alles auswählen

    
    volumes:
      - ./volumes/nextcloud/html:/var/www/html
Für die Datenbank

Code: Alles auswählen

    volumes:
      - ./volumes/nextcloud/db:/var/lib/mysql
Du kannst es so anpassen:

Code: Alles auswählen

    
    volumes:
      - /pfad/zu/deiner/ssd/nextcloudpfad/:/var/www/html
Anschließen noch einmal über portainer oder cli Befehl alles löschen und dann "ei23 dc" ausführen und die nextcloud einrichten.
Die Datenbank komplett zu migrieren ist etwas komplitzierter.
Geht an sich natürlich auch, ist auch auf diversen Webseiten beschrieben.
Dazu müsstest du nur direkt auf den Containern Befehle ausführen

So z.B:

Code: Alles auswählen

docker exec -u www-data nextcloud php occ upgrade;
  • Böse Menschen sind selten tatsächlich böse, meistens eher faul oder dumm.
  • Du kannst nur dann sicher sein, wenn du weißt, dass du nie ganz sicher sein kannst.
  • Du kannst nur unabhängig werden, wenn du weißt, dass du nie ganz unabhängig sein wirst.

ManEn
User
User
Beiträge: 8
Registriert: Mi 9. Nov 2022, 19:45

Re: Data directory der Nextcloud

Beitrag von ManEn »

Hi Felix,

danke für die fixe Antwort.

Ich habe jetzt die -yml-Datei angepasst, indem ich ausschließlich die volumes Zeile unter nextcloud so geändert habe:

Code: Alles auswählen

volumes:
      - /media/manu/ssd_raspberry/nextcloud:/var/www/html
Als alter Windows'ler bin ich mir jetzt nicht sicher, ob ich die ssd vorher noch extra anderweitig "mounten" soll, beim Anstecken der SSD finde ich die SSD jedenfalls unter dem angegebenen Pfad - mit Ausnahme des letzten Unterverzeichnisses ("nextcloud") - das existiert noch nicht.

Anschließend habe ich im Portainer sowohl den nextcloud- als auch den nextcloud_db-container gelöscht und per terminal

Code: Alles auswählen

ei23 dc
//// Docker-Compose wurde erfolgreich ausgeführt!!!
anscheinend wieder erstellt. Auf der ssd sind jetzt im nextcloud-Verzeichnis einige Dateien + Ordner vorhanden. Klingt also schonmal gut.

Wenn ich jetzt über die ei23-Startseite auf die Nextcloud zugreife, dann komme ich jetzt in ein Fenster, in dem admin und "Speicher&Datenbank" festgelegt werden sollen. Allerdings komme ich hier nicht weiter, es kommt zum Fehler:
Fehler

MySQL-Benutzername und/oder Passwort ungültig Du musst Details von einem existierenden Benutzer einfügen.
Administrator-Konto anlegen
Die Details sind im Screenshot im Anhang, das MySQL-Passwort habe ich aus der Docker-compose.yml herauskopiert und eingefügt.

Was mache ich denn hier falsch?
Ich habe das Gefühl, noch "Altlasten" von vor dem Transfer auf die SSD mitzuschleppen - im entsprechenden volumes-Ordner

Code: Alles auswählen

/home/manu/ei23-docker/volumes/nextcloud/html/data
existiert auch noch mein alter admin-Account mit einer Testdatei.

Wie komme ich denn hier weiter, hat jemand einen guten Hinweis?

VG & Danke
Dateianhänge
FehlerMeldung_nc.PNG

Benutzeravatar
ei23felix
Administrator
Administrator
Beiträge: 291
Registriert: Sa 17. Jul 2021, 10:44
Kontaktdaten:

Re: Data directory der Nextcloud

Beitrag von ei23felix »

Die Meldung hätte ich so nicht erwartet...
Hast du denn auch schon alte Daten auf die Festplatte kopiert, oder erstmal alles frisch gelassen?
Versuch es ggf. nochmal, das du die Nextcloud installtion wirklich komplett löscht.
Da gibt es in Portainer auch extra ein Häkchen für, damit werden persistente Daten auch gelöscht.
  • Böse Menschen sind selten tatsächlich böse, meistens eher faul oder dumm.
  • Du kannst nur dann sicher sein, wenn du weißt, dass du nie ganz sicher sein kannst.
  • Du kannst nur unabhängig werden, wenn du weißt, dass du nie ganz unabhängig sein wirst.

ManEn
User
User
Beiträge: 8
Registriert: Mi 9. Nov 2022, 19:45

Re: Data directory der Nextcloud

Beitrag von ManEn »

Ich habe mir (noch auf der SD) einen NC-admin erstellt, in diesem Account habe ich die Std-NC-Files gelöscht und eine Test-Textdatei erstellt. Mehr ist seitdem auch nicht mit der NC passiert.

Ich habe jetzt zwei mal versucht, die NC komplett zu löschen (portainer --> container --> db + NC remove incl. persistent data, außerdem habe ich jetzt auch die entsprechenden images gelöscht und neu gezogen). Das Problem besteht weiter.

Spannenderweise konnte ich gestern, nach zurücksetzen der yml-Datei und einem erneuten Container-Reinstall, sogar mit den alten Credentials wieder auf die NC. Das kann ich jetzt nach dem image-re-pull allerdings nicht mehr reproduzieren.

Die Fehlermeldung klingt für mich, als gäbe es Probleme damit, sich auf der mysql-Datenbank anzumelden. Wie kann ich denn übers terminal mal manuell auf die db und zum Beispiel mal vorhandene User überprüfen?

VG

Benutzeravatar
ei23felix
Administrator
Administrator
Beiträge: 291
Registriert: Sa 17. Jul 2021, 10:44
Kontaktdaten:

Re: Data directory der Nextcloud

Beitrag von ei23felix »

Mit

Code: Alles auswählen

docker exec nextcloud_db bash
Wird z.B. die console (bash) innerhalb des nextcloud_db containers gestartet.
Du kannst statt bash auch direkt andere Befehle ausführen.

Das du dich mit alten Daten anmelden konntest, könnte an veralteten Cache / Cookies im Browser liegen.
  • Böse Menschen sind selten tatsächlich böse, meistens eher faul oder dumm.
  • Du kannst nur dann sicher sein, wenn du weißt, dass du nie ganz sicher sein kannst.
  • Du kannst nur unabhängig werden, wenn du weißt, dass du nie ganz unabhängig sein wirst.

ManEn
User
User
Beiträge: 8
Registriert: Mi 9. Nov 2022, 19:45

Re: Data directory der Nextcloud

Beitrag von ManEn »

Ich glaube, wir kommen der Sache näher, diesen Befehl hatte ich mir auch schon mal ergoogled, aber den Fehler hatte ich eher meine Unerfahrenheit zugeschrieben....

Code: Alles auswählen

docker exec nextcloud_db bash
führt zu

Code: Alles auswählen

OCI runtime exec failed: exec failed: container_linux.go:367: starting container
process caused: exec: "bash": executable file not found in $PATH: unknown
Er findet also irgendwas nicht, ich gehe also davon aus, dass in einer config-Datei irgendwo eine Zeile verkehrt ist? Findet er die Datenbank einfach nicht?
Ich habe jetzt auch versucht, in der yml-Datei den Pfad der nextcloud_db ebenfalls auf die SSD (in ein anderes Verzeichnis) zu setzen. Der Fehler bleibt aber der Gleiche. Was mich aber auch nicht groß wundert, so wie ich das verstanden habe, sind die Einträge in der DB ja "nur" die "meta-Daten" der eigentlich gespeicherten Daten. Ergo sollte die NC ja unabhängig vom Speicherort der DB laufen.

Benutzeravatar
ei23felix
Administrator
Administrator
Beiträge: 291
Registriert: Sa 17. Jul 2021, 10:44
Kontaktdaten:

Re: Data directory der Nextcloud

Beitrag von ei23felix »

Sorry mein Fehler

Code: Alles auswählen

docker exec nextcloud_db bash
geht auf der Datenbank nicht, da kein bash mit drin ist.

Aber du kommst mit

Code: Alles auswählen

docker exec -it nextcloud_db mysql -p nextcloud
direkt in die Datenbank.

Die Datenbank wird unabhängig vom Speicherort der Volumes gefunden.

Ich vermute auch das etwas in der config noch nicht stimmt.
Was sagt Portainer bei der Datenbank, läuft die korrekt?
Normal sollte Nextcloud nicht meckern bei der DB Verbindung.
  • Böse Menschen sind selten tatsächlich böse, meistens eher faul oder dumm.
  • Du kannst nur dann sicher sein, wenn du weißt, dass du nie ganz sicher sein kannst.
  • Du kannst nur unabhängig werden, wenn du weißt, dass du nie ganz unabhängig sein wirst.

ManEn
User
User
Beiträge: 8
Registriert: Mi 9. Nov 2022, 19:45

Re: Data directory der Nextcloud

Beitrag von ManEn »

Portainer meckert soweit ich das sehe nirgends.
Die volumes im nc_db container aus der .yml sind ordentlich übernommen, er befindet sich in einem "network" mit der dem nextcloud-container und auf der Startseite steht schön brav in grün "Running"

Vielen Dank für die Info zum auf die mysql-Datenbank kommen, dort kann ich mir die User anzeigen lassen (user "nextcloud" existiert), allerdings sind in der database "nextcloud" keine tables. Ein

Code: Alles auswählen

 USE nextcloud;
 SHOW TABLES;
führt nur zu einem

Code: Alles auswählen

Empty Set (0.001 sec) 
Ist das normal?

Und nachdem ich festgestellt habe, dass ich für die db das mysql_root passwort brauche, habe ich das auch mal im Browser für die NC eingegeben. Erfolglos allerdings. Selbe Fehlermeldung.

Benutzeravatar
ei23felix
Administrator
Administrator
Beiträge: 291
Registriert: Sa 17. Jul 2021, 10:44
Kontaktdaten:

Re: Data directory der Nextcloud

Beitrag von ei23felix »

Die Datenbank wird normalerweise direkt befüllt.
Und wenn du es nochmal ohne die SSD probierst mit dem originalem Template?
Wenn es dann geht, dann ist die SSD vermutlich nicht richtig eingebunden.
  • Böse Menschen sind selten tatsächlich böse, meistens eher faul oder dumm.
  • Du kannst nur dann sicher sein, wenn du weißt, dass du nie ganz sicher sein kannst.
  • Du kannst nur unabhängig werden, wenn du weißt, dass du nie ganz unabhängig sein wirst.

Antworten