Nextcloud und PHP8.0 Memcache\APCu Probleme

maalik

Benutzer
Mitglied seit
05. Feb 2016
Beiträge
707
Punkte für Reaktionen
11
Punkte
38
Die Daten? Na entsprechend halt auch über den Mount ins Docker einbinden.
Denk dran ein Backup zu machen.
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
Nein. Docker installieren und dort NC. Die Datenbank muss man nicht anfassen! Eventuell fehlen ein paar Grundkenntnisse in Docker. So wird das nichts werden. Erst einmal sollte man wissen, welche Datenbank man aktuell benutzt (SQLite, Mariadb oder Postgresql). Danach würde ich einen Container erstellen und die eventuell vorhandene MariaDB einbinden. Postgresql schließe ich jetzt einmal aus, weil diese nicht direkt auf der DS, für die Anwendung verfügbar ist und sowieso in einer VM oder Docker laufen müsste. Bei SQLite kann die Datenbank direkt kopiert werden, mit den dazugehörigen Files.

Nicht den 2 und 3 Schritt vor den ersten machen!
Das Ganze ist nicht schwer, aber wenn jetzt alles durcheinander geht, brauchst du noch lange, dann haben wir schon Sommer ;)
 

maalik

Benutzer
Mitglied seit
05. Feb 2016
Beiträge
707
Punkte für Reaktionen
11
Punkte
38
Ich hab aktuell Nextcloud im Docker laufen, und wie von @EDvonSchleck schon erwähnt, mit eine Docker-MariaDB.

Ich hab' bis jetzt nie Probleme nach dem Updaten gehabt. Das Einzige ist immer mal wieder, dass die Tabelle angepasst werden müssen, weil Indizes sich geändert haben. Aber das passiert ja auch in der Webversion.

Du darfst bei der Docker-Version nur nicht den Fehler machen, aus der Oberfläche heraus upzudaten.
Ich schieb das mal wieder hoch. Habe jetzt mal Nextcloud in Docker hochgezogen wie hier beschrieben: https://mariushosting.com/synology-how-to-install-nextcloud-using-docker/

Wie führe ich denn jetzt den occ Befehl aus? docker exec in den Container geht nicht, da der Container kein sudo für sudo -u kennt. Wie macht ihr das?
 

plang.pl

Benutzer
Contributor
Sehr erfahren
Mitglied seit
28. Okt 2020
Beiträge
15.028
Punkte für Reaktionen
5.401
Punkte
564
Im Container brauchst du kein sudo
 

DrDeath

Benutzer
Mitglied seit
31. Aug 2018
Beiträge
201
Punkte für Reaktionen
85
Punkte
34
OCC Befehle die im Nextcloud Docker Container ausgeführt sollen funktionieren bei mir so:

Code:
docker exec -it nextcloud php occ
docker exec -it nextcloud php occ db:add-missing-indices
docker exec -it nextcloud php occ maintenance:mode --on
docker exec -it nextcloud php occ maintenance:mode --off
 

maalik

Benutzer
Mitglied seit
05. Feb 2016
Beiträge
707
Punkte für Reaktionen
11
Punkte
38
Danke, das geht schonmal! Ich hab jetzt noch bisschen Probleme mit den korrekten EInstellungen für Ownership der Datei/Ordner und Berechtigungen.
Welche chmod und chown Parameter habt ihr dem Datenverzeichnis gegeben? 770 und http:http?
 

maalik

Benutzer
Mitglied seit
05. Feb 2016
Beiträge
707
Punkte für Reaktionen
11
Punkte
38
Bzw meine Frage vllt. noch ergänzend: Welcher Nutzer/Gruppe ist das denn jetzt, die darauf zugreift? root? mein admin-nutzer? http? Läuft ja jetzt über docker und nicht mehr über den Webserver. Einen docker Nutzer gibt es ja nicht.
 

DrDeath

Benutzer
Mitglied seit
31. Aug 2018
Beiträge
201
Punkte für Reaktionen
85
Punkte
34
Ich kenne die Anleitung von Marius nicht, ich selbst habe das Konstrukt auf einem Raspberry PI laufen.

Aber in deiner Docker Compose kannst du eigentlich den User / Gruppe mitgeben, unter dem der Nextcloud Docker Container laufen soll:

Auszug:
Code:
  nextcloud:
    image: nextcloud
    container_name: nextcloud
    restart: always
    user: 1026:100

Die User ID 1026 und Gruppen ID 100 müsstest Du von deinem Synology Account anpassen.


EDIT:
Um zu testen, ob das mit der Übergabe der User ID / Group ID funktioniert hat, könntest du nach dem starten des Nextcloud Containers in den Container springen und den "id" Befehl absetzen:

(Bei meinem Raspberry Pi nutze ich ich die ID 1000 und Group ID 1000)

Code:
docker exec -it nextcloud bash

id

uid=1000 gid=1000 groups=1000
 
Zuletzt bearbeitet:

Andy+

Benutzer
Sehr erfahren
Mitglied seit
25. Jan 2016
Beiträge
5.357
Punkte für Reaktionen
481
Punkte
189
Da ich Docker-Container bei der Administration als unhandlicher gegenüber VM´s empfinde, habe ich eine VM dafür, die einwandfrei und ohne Probleme funktioniert und sich zudem als eigenständiges Device ansprechen lässt.

https://www.hanssonit.se/nextcloud-vm/
 

plang.pl

Benutzer
Contributor
Sehr erfahren
Mitglied seit
28. Okt 2020
Beiträge
15.028
Punkte für Reaktionen
5.401
Punkte
564
Wieso ist das umständlicher? Es ist auf jeden Fall ressourcenschonender als eine VM
 
  • Like
Reaktionen: Adama

alexhell

Benutzer
Sehr erfahren
Mitglied seit
13. Mai 2021
Beiträge
2.831
Punkte für Reaktionen
853
Punkte
154
Ich finde eine VM ist viel mehr Aufwand beim pflegen. Man muss nicht nur aufpassen, dass die Software (Nextcloud) immer up to Date ist, sondern auch die VM. Wenn man diverse Apps hat und für jede eine eigene VM macht, dann ist man nur noch damit beschäftigt Updates zu machen.
 
  • Like
Reaktionen: Adama

Andy+

Benutzer
Sehr erfahren
Mitglied seit
25. Jan 2016
Beiträge
5.357
Punkte für Reaktionen
481
Punkte
189
Das ist zwar richtig, aber relativ. Ob nun Container oder VM, in beiden Fällen befindet sich ein Linux dahinter, das Updates braucht. Im Fall einer VM kommt es darauf ankommt, wie die Updatemechanismen aussehen. Bei der von mir genannten ist Webmin installiert, was diese Vorgänge erledigt, dafür tagesaktuell, wenn man möchte, das liegt an einem selber. Bei den Docker Containern ist es über die Imageupdates gelöst, tagesaktuell gibts die allerdings nicht.

In beiden Fällen liegt es bei jedem selbst, wie oft man updated und sich darum kümmert, täglich, wöchentlich, monatlich usw. Die Docker Container sind zudem später verfügbar, die v27.0.2 seit 4 Tagen, v27.0.1 liegt 23 Tage zurück. Da waren die Versionen nativ und damit für eine VM aber schon längst verfügbar, v27.0.2 seit 2 Wochen, die v27.0.1 gibt es schon seit Mitte Juli und die v27.1.0beta2 gibts nun auch schon eine Woche. Muss nicht negativ sein, der Updatewillige muss halt länger warten.
 

alexhell

Benutzer
Sehr erfahren
Mitglied seit
13. Mai 2021
Beiträge
2.831
Punkte für Reaktionen
853
Punkte
154
Eine VM braucht aber trotzdem viel mehr Pflege als ein Docker Container und es kann auch viel mehr schief gehen. Braucht auch mehr Ressourcen. Wie aktuell das Image ist, hängt davon ab welchen Tag du nimmst.
Und auch die Macher von Nextcloud sagen:
However installing the docker image manually is much more flexible.
Und wenn du Nextcloud hinter einem Reverse Proxy betreiben willst, sagen die Macher auch, dass man das per Docker machen sollte
E.g. if you want to run AIO behind a reverse proxy, you need to use the docker image as this VM image is not suitable for this use case.

Mir ging es auch nicht nur um die Updates von Nextcloud. Bei einer VM muss die Distribution auch geupdated werden. Und je nach Update muss die VM auch öfter mal neugestartet werden.

Ich persönlich sehe echt keinen Vorteil wenn man jeden Anwendung die man selber hosten will eine eigene VM einrichtet. Irgendwann wird das ein Fulltime Job.
 

maalik

Benutzer
Mitglied seit
05. Feb 2016
Beiträge
707
Punkte für Reaktionen
11
Punkte
38
Also wenn ich den nextcloud-Container mit 1026:100 starte (das sind auch meine IDs), dann startet er nicht und bleibt im reboot loop hängen.

Ohne id geht es, aber dann habe ich folgende Probleme:

755 und 1026:100 (name:users)

Das Schreiben in das „config“-Verzeichnis ist nicht möglich!



Was genau machen eig. in der Anleitung von mariushosting der cron container und der redis container?
 

Andy+

Benutzer
Sehr erfahren
Mitglied seit
25. Jan 2016
Beiträge
5.357
Punkte für Reaktionen
481
Punkte
189
User ID 1026 und Gruppen ID 100 müsstest Du von deinem Synology Account anpassen

oder anders PUID und PGID zum User, sofern angelegt, stehen in den Dateien

/etc/passwd
/etc/group

die musst Du auslesen und eintragen.
 

DrDeath

Benutzer
Mitglied seit
31. Aug 2018
Beiträge
201
Punkte für Reaktionen
85
Punkte
34
Wenn der nextcloud Container dauernd rebootet, wäre ein Blick in die Docker Logs nextcloud hilfreich.
GGf ,startet der Container nicht, weil die Dateien nicht deiner User-ID / Group ID gehören.

Wenn du den Container mit userid 1026 und group id 100 versiehst, solltest du vorher den Ordnern und Dateien die gleichen OWNER zuweisen.


Redis - Der REDIS Container wird benötigt um Nextcloud schneller zu machen (Mem cache usw. )

Der Cron Container führt alle 5 Minuten Hintergrundaufgaben aus....das könnte man auf der Synology auch mit dem Aufgabenplaner ausführen lassen.....
 

Andy+

Benutzer
Sehr erfahren
Mitglied seit
25. Jan 2016
Beiträge
5.357
Punkte für Reaktionen
481
Punkte
189
Die Frage ist, welcher User und welche Gruppe das nun sein soll. Beides muss vorher definiert sein und deren ID´s werden dann verwendet. Findet die Definition im DSM statt ist die Rechtevergabe dann ja einfach.
 

maalik

Benutzer
Mitglied seit
05. Feb 2016
Beiträge
707
Punkte für Reaktionen
11
Punkte
38
Also wenn ich allen 4 Containern die Berechtigungen 1026:100 (was immer noch die richtigen Angaben sind) gebe, dann steht in den docker logs vom Nextcloud Container (der der im Reboot-Loop hängt) folgendes:
Configuring Redis as session handler
/entrypoint.sh: 111: cannot create /usr/local/etc/php/conf.d/redis-session.ini: Permission denied
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat