Nextcloud Installation auf einer Synology DiskStation mit DSM 7.0

Das neue DSM 7 ist da und auch hier ist die Nachfrage nach Nextcloud wieder sehr hoch. Synology bietet zwar eine eigene Cloudlösung, Synology Drive, die ist aber bei weitem nicht so umfangreich und flexibel wie Nextcloud. Sei es Kalender- und Kontaktsynchronisation oder die Apps und Weboberfläche, es gibt viele Gründe für Nextcloud auf einer DiskStation. Der Artikel erklärt Schritt für Schritt, wie ihr Nextcloud auf einem Synology NAS installiert.

Vorbereitung

Bevor wir anfangen können, kontrolliert ob die Web Station läuft bzw. installiert Sie, wenn ihr das noch nicht getan habt. Außerdem benötigt ihr SSH-Zugriff (zu finden in der Systemsteuerung unter Terminal & SNMP) auf euer NAS (z.B. mit PuTTY).
Wichtig: Nutzt ihr bisher Nginx als Webserver, müsst Ihr in der Web Station unter Allgemeine Einstellungen > HTTP-Backend-Server auf Apache HTTP Server 2.4 umstellen. Nextcloud läuft unter Nginx nicht ohne diesen vorher zu konfigurieren. Bisher ist aber keine funktionierende Konfiguration für Synology in der Community vorhanden. Ihr könnt für Nextcloud einen vhost einrichten, der den Apache nutzt, dann könne ihr den Rest eurer DS wieder auf Nginx umstellen.

Installiert folgende Pakete im Paket Zentrum:

  • PHP 7.4
  • phpMyAdmin (wird nur benötigt falls es Probleme mit der Datenbank gibt) (alternativ gehts auch ohne)
  • Apache (2.4)
  • MariaDB 10

Öffnet MariaDB 10 und setzt den Haken bei “TCP/IP-Verbindung aktivieren”.

Freigegebener Ordner

Erstellt einen neuen freigegebenen Ordner als Speicherort für die Daten. Nextcloud speichert die Daten standardmäßig im data-Ordner unter /web/Nextcloud. Nextcloud empfiehlt aus Sicherheitsgründen den Speicherort außerhalb des /web Ordners anzulegen. Das erleichtert auch ein späteres Upgraden von Nextcloud. Auf den freigegebenen Ordner sollte niemand sonst Zugriff haben und auch als Administrator solltet ihr dort nur Änderungen vornehmen wenn Sie eure Nextcloud-Installation betreffen. Diese Änderungen solltet ihr dann aber über PuTTY als root machen, da sich sonst die Ownership ändert und Nextcloud nicht mehr auf den Ordner/die Dateien zugreifen kann. Erstellt den freigegebenen Ordner über DSM > Systemsteuerung > Freigegebener Ordner, erstellt ihr den Ordner über PuTTY erkennt DSM diesen nicht und ihr könnt ihn z.B. nicht über Hyper Backup sichern.

Damit PHP auch auf den freigegebenen Ordner zugreifen kann, muss der Pfad in open_basedir eingetragen werden. Details dazu im Abschnitt “PHP Profil”.

Öffnet PuTTY und verbindet euch mit eurer DS. Loggt euch als Administrator ein. Um die Befehle als root auszuführen gebt sudo –i ein und drückt (Enter). Gebt erneut euer Administratorpasswort ein. Gebt folgende 2 Befehle ein, damit Nextcloud, bzw. der User des Webservers auch auf diesen zugreifen darf:

chown http:http /volume1/nextcloudData
chmod -R 777 /volume1/nextcloudData

PHP-Profil

Öffnet die Web Station und erstellt unter Skript-Spracheinstellungen ein neues Profil.

  1. Vergebt einen Namen und eine Beschreibung.
  2. Wählt PHP 7.4 aus.
  3. Aktiviert “PHP-Cache aktivieren”.
  4. Aktiviert “PHP open_basedir benutzerspezifisch anpassen” und tragt /tmp:/var/services/tmp:/var/services/web ein. Fügt jetzt noch den Pfad zum gemeinsamen Ordner ein, den ihr vorhin angelegt habt (vergesst den : nicht). Das ganze könnte dann so aussehen: /tmp:/var/services/tmp:/var/services/web:/volume1/nextcloudData
  5. Aktiviert folgende Erweiterungen: bcmath, bz2, curl, ftp, gd, gmp, iconv, imagick, intl, mysqli, openssl, pdo_mysql, posix, sodium, ssh2, zip, zlib

Webserver-Timeout

Synology hat in DSM 7 ein allgemeines Timeout für den Nginx als Proxy-Server (der ist immer vorgeschaltet, auch wenn ihr Apache als Webserver nutzt) festgelegt. Das Timeout gilt allerdings nicht mehr, sobald man einen virtuellen Host verwendet. Wer meine bisherigen Anleitungen zu Nextcloud auf der Synology Diskstation kennt, der weiß, wo sich unter DSM 6 das Timeout setzen ließ. Das klappt aber unter DSM 7 nicht, da der Eintrag mit dem von Synology in Konflikt gerät.

  1. Verbindet euch per SSH (z.B. PuTTY) mit eurem NAS. Führt die Änderungen als root durch.
  2. Öffnet die Datei /var/packages/WebStation/target/misc/VirtualHost-nginx.mustache im Editor.
vi /var/packages/WebStation/target/misc/VirtualHost-nginx.mustache
  1. Fügt die Zeile proxy_read_timeout 3600s; im Block für Apache 2.2 bzw. Apache 2.4 unter include proxy.conf; ein. Führt die Änderung in jenem Block durch, der zur verwendeten Apache-Version passt. Ihr könnt die Zeile aber auch in beiden Blöcken einfügen.
  2. Speichert und schließt die Datei.
  3. Testet zuerst die Nginx-Konfiguration, startet dann den Nginx neu, wenn der Test positiv ausfällt und testet die Konfig danach erneut:
nginx -t
synosystemctl restart nginx
nginx -t
Proxy-Timeout für vHosts erhöhen
Proxy-Timeout für vHosts erhöhen

Das Timeout für den Proxy ist jetzt auch unter Verwendung von virtuellen Hosts erhöht. Jetzt kann es aber immer noch am Apache zum Timeout kommen. Das lässt sich, wie auch schon unter DSM 6 beheben:

  1. Erstellt (als root) die Datei /usr/local/etc/apache2X/sites-enabled/user.conf
vi /usr/local/etc/apache24/sites-enabled/user.conf
  1. Fügt die Zeile TimeOut 3600 ein.
  2. Speichert und schließt die Datei.
  3. Startet den Apache neu.

Installation

Ladet die neueste Version von Nextcloud als .zip oder .tar hier herunter. Ladet das zip-File auf eure DiskStation hoch und extrahiere es in den /web Ordner.

Jetzt wäre der richtige Zeitpunkt den virtuellen Host anzulegen. Ihr könnt den vHost aber auch nach der Installation anlegen.
Wählt dazu in der Web Station Webdienstportal und legt mit Erstellen > Dienstportal > Virtueller Host einen neuen Eintrag an.

  • Tragt den Hostnamen ein, unter dem ihr eure Nextcloud erreichen wollt. (Der Hostname muss existieren und auf eure DiskStation verweisen, mehr dazu in diesem Artikel.)
  • Wählt die Ports, für die der virtuelle Host gilt (im Normalfall 80/443).
  • Wählt als Dokument-Root den Nextcloud-Ordner (/web/Nextcloud).
  • Aktiviert unbedingt “HSTS” und “HTTP/2”, das sorgt dafür, dass alle http-Zugriffe auf eure Cloud auf https umgeleitet werden. Dafür ist aber ein gültiges SSL-Zertifikat notwendig, das für die verwendete Domain ausgestellt wurde. Auch dazu findet Ihr eine Anleitung im vorhin verlinkten Artikel.
  • Wählt als Webserver Apache 2.4 und das zuvor angelegte PHP-Profil.

Ändert die Rechte des Nextcloud-Ordners. Erstellt dazu am besten ein Script (Textdatei mit .sh Endung) mit folgendem Inhalt irgendwo auf der DiskStation:

#!/bin/bash
chown -R http:http /volume1/web/Nextcloud/
chmod -R 777 /volume1/web/Nextcloud/

Um das Script als root auszuführen gebt sudo –i ein und drückt Enter. Gebt erneut euer Administratorpasswort ein. Führt das Script nun mit sh /volume1/PfadZumScript/Installationsberechtigung.sh aus. Anstelle des Scripts könnt ihr auch Zeile für Zeile in die Shell eingeben, das ist aber mühsam, da ihr die Rechte bei jedem Update wieder ändern müsst.

Fehlerhafte Datenbankabfrage (MariaDB älter als 10.3.32)

Das Setup von Nextcloud erzeugt automatisch Datenbank inklusive Tabellen und einem eigenen Nutzer. Dabei wird eine Syntax genutzt, die Probleme bei Synologys Version von MariaDB 10 verursacht. Damit die Installation richtig durchgeführt werden kann, müssen die problematischen Zeilen angepasst werden:

  1. Öffnet (mit PuTTY) die Datei /volumeX/web/Nextcloud/lib/private/Setup/MySQL.php
  2. Scrollt fast bis zum Ende und sucht folgende Zeile:
$this->dbPassword = $this->random->generate(30, ISecureRandom::CHAR_DIGITS . ISecureRandom::CHAR_LOWER . ISecureRandom::CHAR_UPPER);
  1. Entfernt “, ISecureRandom::CHAR_DIGITS . ISecureRandom::CHAR_LOWER . ISecureRandom::CHAR_UPPER“, das Ergebnis sieht dann so aus:
$this->dbPassword = $this->random->generate(30);
  1. Speichert und schließt die Datei.

Datenbank-Problem umgehen

Eigentlich sollte die Installationsroutine von Nextcloud die Datenbank inklusive eigenem Benutzer selbst anlegen. Allerdings gibt es immer wieder Probleme zwischen dem Installationsskript von Nextcloud und Synologys MariaDB-Paket. Aktuell erhält man die Meldung “MySQL-Benutzername und/oder Passwort ungültig Du musst Details von einem existierenden Benutzer einfügen.”, auch bei Verwendung des root-Users.

Um das Problem zu umgehen, legen wir Datenbank und Benutzer einfach selbst an.

Öffnet phpMyAdmin und meldet euch als root oder Benutzer mit administrativen Rechten an. Alternativ könnt ihr euch auch mit MariaDB via Kommandozeile (PuTTY) verbinden. Wechselt in den Reiter SQL und gebt dort folgende Zeilen ein:

CREATE DATABASE <NEXTCLOUD_DB_NAME>;

CREATE USER '<NEXTCLOUD_DB_BENUTZER>'@'localhost' IDENTIFIED BY '<SICHERES_PASSWORT>';

GRANT ALL ON <NEXTCLOUD_DB_NAME> .* TO '<NEXTCLOUD_DB_BENUTZER>'@'localhost';

FLUSH PRIVILEGES;

Ersetzt die Platzhalter <NAME> mit tatsächlichen Namen die Ihr verwenden wollt (die spitzen Klammern <> gehören dabei entfernt, die einfachen Anführungszeichen ‘ sind aber Teil der Befehlssyntax). Klickt anschließend auf OK um die Befehle auszuführen. Dabei wird eine Datenbank erstellt sowie ein neuer Benutzer, der nur per localhost auf die Datenbank zugreifen darf, auf der Datenbank aber alle Rechte besitzt.

Installationsassistenten ausführen

Öffnet Nextcloud im Browser. Verwendet dabei unbedingt die Adresse, die ihr für den virtuellen Host angegeben habt (z.b. cloud.meinedomain.com), habt ihr keinen virtuellen Host konfiguriert verwendet die IP, den Namen der DiekStation oder eine Domain die auf die DiskStation zeigt, gefolgt vom Nextcloud-Verzeichnis (z.b. mynas.synology.me/Nextcloud) Die Adresse die Ihr hier benutzt wird während der Installation als vertrauenswürdige Domain eingetragen. Wollt ihr Nextcloud von anderen Domains aus erlauben müsst ihr diese später in der config.php eintragen. Das ist der Fall wenn ihr z.B. die Cloud später über eine eigene Domain bzw. DynDNS erreichen wollt, aber bei der Installation den lokalen Namen oder die lokale IP der DiskStation benutzt.

Nextclud Hub Installation im Browser
Nextclud Hub Installation im Browser

Den Fehler könnt ihr einfach ignorieren, ihr seht ihn nur, wenn eure DiskStation keine 64bit-CPU aufweist. Gebt einen Benutzernamen und ein Passwort für den Nextcloud-Admin ein (der NC-Admin hat nichts mit dem Admin der DiskStation zu tun). Unter Speicher & Datenbank > Datenverzeichnis ist standardmäßig /volumeX/web/nextcloud/data eingetragen, gebt den Pfad zum freigegebenen Ordner an, den ihr vorhin angelegt habt.

Im Abschnitt “Datenbank” gebt Ihr den root-Benutzer von MariaDB und das Passwort an. Alternativ funktioniert jeder User, der das Recht hat, Datenbanken anzulegen. Der Benutzer wird nur für die Installation verwendet. Es wird ein eigener Benutzer angelegt, den Nextcloud für den Betrieb verwendet. Vergebt noch einen Namen für die Datenbank.

Im Abschnitt “Datenbank” tragt ihr den Datenbank-Benutzer sowie den Datenbank-Namen ein, die ihr im vorherigen Abschnitt angelegt habt. Für die Datenbankdomain ist “localhost” voreingetragen, ihr müsst noch den Port ergänzen. MariaDB 10 hat in DSM 7 den Port 3306 und nicht wie früher 3307. Den Port könnt ihr in MariaDB 10 ändern.

Datenbankdetails
Datenbankdetails

Neu seit Nextcloud 18 ist die Option, empfohlene Apps zu installieren. Wollt Ihr die integrierte Collaboration-Lösung OnlyOffice nutzen, muss das die gleichnamige App installiert sein. Ihr könnt die Apps an dieser Stelle aber auslassen und OnlyOffice nachträglich installieren. Das macht Sinn, vorallem da ihr Talk und OnlyOffice nur auf DiskStations mit x86-CPU nutzen könnt. Die Apps sind sehr groß, braucht Ihr Sie nicht, spart euch den Speicherplatz und die Zeit und Installiert z.B. Calendar und Contacts im Anschluss selbst.

Empfohlene Apps
Empfohlene Apps

Klickt den Button “Installation abschließen” um das Setup abzuschließen. Nach einigen Augenblicken ist die Installation abgeschlossen und ihr solltet das Webinterface sehen.

Willkommenstour im Webinterface
Willkommenstour im Webinterface

OnlyOffice aktivieren

Seit Nextcloud 18 wird mit dem Community Document Server eine integrierte Version von OnlyOffice angeboten. Dieser ist als App installierbar und soll die Bereitstellung von OnlyOffice via Docker überflüssig machen. Und jetzt kommt das fett ABER:
Die App ist immer noch nicht in einem annähernd stabilen Zustand. Ich rate von einer produktiven Nutzung ab. Folgende Fehler wurden mir von anderen Benutzern/Lesern mitgeteilt und konnten auch von mir nachgeprüft werden:

  • Änderungen über den Browser werden zwar gespeichert und sind beim nächsten Öffnen im Browser wieder vorhanden, werden aber nicht richtig von der Cloud erfasst und somit weder in der Versionierung eingetragen noch richtig synchronisiert. Bei Bearbeitung einer Datei mit mehreren Geräten (auch nacheinander) kann Datenverlust auftreten.
  • Ältere Versionen können nicht geöffnet werden, von Excel-Dokumenten wird immer die aktuellste Version geöffnet, Word-Dokumente öffnen sich gar nicht. Eine WIederherstellung einer älteren Version funktioniert aber.

Wer Dokumente direkt über die Cloud bearbeiten möchte, muss dann doch auf Docker zurückgreifen. Als mögliche Lösung bieten sich OnlyOffice (sofern ihr keine Bearbeitung auf Mobilgeräten benötigt) oder Collabora/LibreOffice an. Anleitungen dazu findet ihr dazu hier in meinem Blog, folgt einfach den Links.

So viel zu “integriert”, selbst wenn ihr OnlyOffice bei der Einrichtung mitinstalliert habt, läuft noch gar nichts. Trotzdem ist die Integration ein Schritt nach vorne. Bisher musste OnlyOffice in einem Docker-Container aufgesetzt werden und Docker auf der DiskStation ist kein Spaß (die Synology-Version von Docker funktioniert wieder mal anders als die offizielle Version). Die integrierte Version von OnlyOffice macht Docker überflüssig. Das ändert aber nichts daran, das OnlyOffice immer noch eine x86-CPU voraussetzt. Ist in eurem NAS eine ARM-CPU verbaut, könnt ihr den Abschnitt überspringen.

Von offizieller Stelle nicht dokumentiert, muss noch eine weitere App installiert werden. Öffnet den Appstore indem ihr im Webinterface rechts, oben auf euren Account klickt und dort + Apps auswählt.

Wenn Ihr die empfohlenen Apps nicht installiert habt: Sucht nach die App ONLYOFFIC. Ihr findet sie im Bereicht “Büro & Text”. Ladet die App herunter und aktiviert sie. Sucht dann die App Community Document Server, ebenfalls unter “Büro & Text”. Ladet die App herunter und aktiviert sie.

Synology macht hier wieder mal Probleme. Eine Datei fehlt, aber mit ein paar extra Schritten bekommen wir auch das in den Griff.

  1. Ladet libstdc++6 für Debian hier herunter.
  2. Entpackt folgende Datei: data.tar\.\usr\lib\x86_64-linux-gnu\libstdc++.so.6.0.25
  3. Benennt die Datei in libstdc++.so.6 um.
  1. Ladet die Datei auf eure DiskStation.
  2. Kopiert die Datei mit PuTTY:
cp <PfadZurDatei> /volume1/web/nextcloud/apps/documentserver_community/3rdparty/onlyoffice/documentserver/server/FileConverter/bin
  1. Passt die Rechte und den Besitzer der Datei an. Der Besitzer muss http http sein. Nutzt die bei “Installation” angegebenen Befehle.
  1. Geht jetzt in den Adminbereich: Rechts, oben auf den Account klicken und Einstellungen. Im Navigationsbereich könnt ihr ONLYOFFICE auswählen. Kontrolliert ob die Einstellungen vorhanden sind. Unter “Serviceadresse der Dokumentenbearbeitung” muss die URL eurer Nextcloud eingetragen sein. Verwendet ihr https – was ich dringend empfehle – muss die URL der Domain entsprechen, auf die das SSL-Zertifikat ausgestellt ist.

Das war’s. Klickt ihr jetzt im Bereich “Dateien” auf ein Dokument öffnet sich OnlyOffice und ihr könnt es im Browser bearbeiten. Erscheint nur die Auswahl für einen Download, ist OnlyOffice nicht aktiv. Erscheint “Community document server is not supported for this instance, please setup and configure an external document server”, dann müsst ihr im Log nach der genauen Fehlermeldung suchen. Dazu müsst ihr im Adminbereich auf “Protokollierung” gehen. Steht dort “OCA\DocumentServer\Document\DocumentConversionException: sh: ./x2t: cannot execute binary file: Exec format error” dann hat eure DiskStation eine ARM-CPU und auf der läuft OnlyOffice nicht.

Nächste Schritte

Jetzt könnt ihr Nextcloud direkt im Browser nutzen, oder ihr ladet euch den Client herunter. Der Client funktioniert ganz ähnlich wie der von Dropbox. Ihr könnt eure gesamte Cloud mit eurem Rechner synchronisieren oder aber nur einzelne Ordner. Das synchronisieren einzelner Ordner ist auch dann ganz hilfreich wenn ihr schon eine bestehende Ordnerstruktur für eure Daten (Bilder, Videos, Datein, etc.) – z.B. auf verschiedenen Laufwerken – habt und ihr diese beibehalten wollt. Der Client ermöglicht auch die Verwendung mehrerer Nextcloud-Instanzen. Die Client-App für Smartphones bietet auch die Option Bilder automatisch hochzuladen. Die Daten selbst werden nicht alle auf das Smartphone heruntergeladen, erst wenn ihr einzelne Dateien über die App abruft.

Warnungen im Adminbereich
Warnungen im Adminbereich

Im Adminbereich unter Übersicht werden mit ziemlicher Wahrscheinlichkeit einige Fehler angezeigt werden. Wie ihr Nextcloud optimiert und für den tatsächlichen Einsatz konfiguriert erfahrt ihr dann beim nächsten mal.

Möchtet Ihr noch detailliertere Schritt-Für-Schritt-Anleitungen für euer Synology NAS, mit viel mehr Hintergrundinformationen, Tipps und Tricks? Dann holt euch mein Wissen als als umfassendes Praxis-Handbuch. Mehr Infos findet ihr in keinem Buch zu Synology und alles in der von mir gewohnten Qualität.

Die neue Auflage zu DSM 7 ist komplett überarbeitet.

Das Buch direkt beim Verlag

Das Buch auf Amazon

Related Posts

47 thoughts on “Nextcloud Installation auf einer Synology DiskStation mit DSM 7.0

  1. Hallo, vielen Dank für die regelmäßigen Anleitungen für Nextcloud auf DSM.
    Ich benutze sie seit längerem erfolgreich, aber seit meinem Update auf Nextcloud 22 (auf DSM 7) kann ich die Nextcloud nicht mehr erreichen.
    Ich bekomme immer “Error 403 Bei der Verarbeitung dieser Anforderung ist ein Fehler aufgetreten”.
    Mein Problem ist, dass ich keine Server-Logs finde, da die in DSM irgendwo anders liegen als in den typischen Nextcloud auf Linux-Systemen.
    Hast du Tips für mich fürs Trouble shooting?
    Danke und viele Grüße
    David

  2. Hallo Andreas,
    seit ich DMS DSM 7.1-42661 Update 1 auf der Syno habe kommt es immer zu 504 Gateway Timeout. Ich habe dann versucht die Timeout wie in deiner Beschreibung rauf zu setzen, aber das klappte nur bei /usr/local/etc/apache24/sites-enabled/user.conf
    bei der Datei /var/packages/WebStation/target/misc/VirtualHost-nginx.mustache klappt das nicht, die sieht bei mir komplett anders aus. Trotzdem die Zeile da irgend wo einbauen?
    Leider kann ich hier kein Bild einbauen

    1. Hallo Hans,

      Danke für den Hinweis. Scheinbar hat Synology auf das Feedback gehört, die Timeouts können jetzt scheinbar direkt über die GUI im Virtual Host angegeben werden.
      Beim Erstellen eines neuen virtual Hosts kommt man im laufe des Dialogs dazu. Für bestehende vhosts kannst du einfach auf bearbeiten gehen und hast dort einen Reiter Timeout.
      Ich werde das in der Anleitung demnächst ausbessern.

      Grüße
      Andreas

      1. Hallo Andreas
        Stimmt für den Apache, nicht für den Nginx. Das Problem tritt auf wenn man am Handy davx verwendet, im virtual Host etwas rauf zu setzen hilft mir leider nicht, da es offensichtlich das Synology Web Server teil ist was einen Fehler 504 verusacht. Der antwortet nur verzögert auf anfragen und ich dachte ich könnte das über die Änderung in der Datei /var/packages/WebStation/target/misc/VirtualHost-nginx.mustache ändern, nur genau dort kann ich kein Timeot einsetzen weil die bei mir komplett anders aussieht.Grüße
        Hans

        1. Hast du schon mal probiert das Timeout in der fastcgi.conf setzen, wie hier beschrieben.
          Nach dem Update auf 7.1 (wie warscheinlich nach jedem DSM update) wird die Datei zurückgesetzt.

      2. Hallo Andreas,
        habe ich probiert mit fastcgi.conf, leider hilft das auch nicht, vom Handy bekomme ich immer timeouts. Mir kommt vor, als würde die Weiterleitung vom nginx zum Apache irgend wie haken, aber finden tue ich da nix. Wenn ich die Weboberfläche von nextcloud aufrufe dauert es ca. 5 sec bevor die da ist.Die Weboberfläche selber braucht 2 sec. das alles im Inhous Netz.

        1. Hallo Hans,

          Zumindest bei der Installation klappt Timeout in der vHost-GUI + Timeout in sites-endabled.
          Scheinbar gilt das Timeout in der GUI nur für den ProxyServer, was die ganze Sache meiner Meinung nach nur halb-nützlich und verwirrend macht.
          Ich werd da dem Support mal schreiben.
          Den Timeout mit DAVX hatte ich auch mal, aber der ist wieder verschwunden. Dafür bekomm ich öfter mal einen Timeout beim Cron über den Aufgabenplaner.

          Grüße
          Andreas

        2. Hallo Andreas, ich habe dem von DAVx schon geschrieben, mal schauen was der raus findet.
          Na und der Support von Synology in Deutschland kennt nur eines, lassen sie mich mal auf ihre Box remote, dann richten wir das schon…
          Also schauen wir ob es wieder weg geht.

  3. Hallo Andreas, hallo liebe Mitlesenden,
    tolle Seite, ich bin auch schon fast am Ziel mit meiner Installation der Version 24.0.1 unter DMS 7.1 mit Apache 2.4.26 und PHP 7.4. Bei mir behakeln sich die PHP-Memory-Cache-Einstellungen in der config.php (um den Warnhinweis im Admin-Webportal loszuwerden)
    ‘memcache.local’ => ‘\\OC\\Memcache\\APCu’,
    mit dem occ-Befehl und dem Nextcloud-Cron-Job, den ich über den DSM-Aufgabenplaner realisiert habe. Benutzerdefiniertes Skript:
    sudo -u http php74 -f /volume1/web/nextcloud/cron.php -d apc.enable_cli=1
    Kommentiere ich die memcache-Zeile in der config.php wieder aus, klappt alles. Aber man will auf den Cache ja nicht verzichten …
    Hast Du vielleicht eine Idee, was ich übersehen habe? Viele Grüße


  4. Hallo Andreas,
    nach der Anleitung in Deinem Buch konnte ich Nextcloud problemlos installieren.

    Nun versuche ich, eine 2. Instanz zu installieren. Dazu habe ich:
    a) ein 2. Nextcloud Verzeichnis angelegt: /volume4/web/nc02
    b) ein 2. Datenverzeichnis dafür angelegt: /volume2/ncData022
    c) beide Verzeichnis mit dem 777 Recht belegt:
    /volume2$ dir
    drwxrwxrwx 1 http http 28 Apr 30 12:11 ncData022

    d) in der Web Station ein über die Skkript Spracheinstellung ein PHP-Profil mit Namen NC02 angelegt, das in der Open_basdir auf das Datenverzeichnis zeigt:
    /tmp:/var/services/tmp:/var/services/web:/volume2/ncData022

    e) in der Web Station im Webdienstprotal einen virtuellen Host eingetragen mit
    – Zugriff auf das nextcloud: Hostname = nc.dyndns.name
    – Port 80/443
    – Dokument -Root: web/nc02
    – HTTPS: HSTS angekreuzt, den Kasten für http/2 gibt es in DMS 7 ja nicht mehr
    – HTTP-Backend = Apache 2.4
    – PHP: = NC02 (siehe Punkt d)
    Selbigen Host habe ich dann noch aktiviert.

    f) den Apache gestoppt und neu gestartet

    g) auf der Maria DB eine neue Datenbank angelegt

    g) und nun Nextcloud gestartet mit http://192.168.2.110/nc02
    da erscheint dann das Einstiegsbild. Nach der Eingabe einer Anmeldung und des korrekten Datenverzeichnisses sehe ich dann die Meldung
    “Das Datenverzeichnis /volume2/ncData022 kann nicht erstellt oder es kann darin nicht geschrieben werden. ”

    Ich habe das Verzeichnis überprüft, die Rechte dazu ebenfalls (siehe oben Pkt c), finde aber nirgends einen Fehler.
    Womit kann denn die Fehlermeldung noch zusammenhängen. Oder ist es generell nicht möglich, eine 2. Instanz anzulegen?

    schöne Grüße
    Andreas Lorch

    1. Hallo Andreas,

      Du startest die Cloud falsch. Nachdem du einen virtuellen Host erstellt hast, musst du NC auch mit diesem Host aufrufen, ansonsten wird das PHP-Profil nicht verwendet.

      Grüße
      Andreas

  5. Hallo Andreas,

    vielen Dank für die gute Anleitung unter DSM 7. Es hat auch (fast) alles gut geklappt, ich verzweifle gerade nur an einem Problem:

    Es gibt einige Warnungen bei Deiner Systemkonfiguration.
    Es wurde kein PHP Memory Cache konfiguriert. Konfiguriere zur Erhöhung der Leistungsfähigkeit, soweit verfügbar, einen Memory Cache.

    Bis auf die oben stehende Warnung konnte ich alles anderen beheben. Kannst Du mir vielleicht helfen
    wie ich diese “PHP Memory Cache” – Warnung auch noch weg bekomme. Ich schon einige Seiten im Netz durchsucht aber noch keine Lösung gefunden.

    Danke vorab & Gruß
    Joerg

  6. Servus Andreas, die Fehlermeldung zur Erhöhung des Memmory Limits ist “Could not open input file: occ”
    Den Befehl ab ich als DS Root ausgeführt

    root@DS416Play:~# sudo -u http php74 -d memory_limit=512M occ
    Could not open input file: occ

    oder so
    root@DS416Play:~# sudo -u http php74 -d memory_limit=512M occ app:install documentserver_community
    Could not open input file: occ

    Die selbe Meldung
    lg
    Andreas

    1. Hallo Andreas

      occ ist ein Befehlssatz von Nextcloud, der wird nicht in der DSM-Kommandozeile registriert und ist daher nur in /web/nextcloud/ verfügbar. Um occ-Befehle auszuführen musst du vorher mit cd /volume1/web/nextcloud das Verzeichnis wechseln.

      Grüße
      Andreas

      1. Servus,
        So hat es funktioniert 🙂
        Ich werde trotzdem alles wieder deinstallieren, und nochmal von vorne Anfangen.
        Ich hab sicher einiges falsch gemacht, und das ist eine gute Gelegenheit das nochmal sauber Installation durchzuführen.
        Außerdem bin ich schon etwas geübter 😉

        Docker hab ich auch installiert, das ist zwar vom Hersteller nicht vorgesehen, mit etwas editieren in der synoinfo.conf geht das
        Danke für die Antwort, vielleicht bringst du noch ein Buch raus, wo das beschrieben ist. Einen Kunden hättest du dann schon 😉
        lg
        Andreas

        1. Hallo Andreas,

          Ja neu machen ist eine gute Idee, so lernt man dazu und geht sicher dass sich keine Probleme einschleichen.
          In der Neuauflage zu DSM 7 gibt es bereits ein Kapitel zu Docker (dem Synology Paket) inklusive MariaDB, phpMyAdmin und Nextcloud.

          Grüße
          Andreas

        2. Servus, ich hab die Fehlermeldung mit dem zu geringem Speicher ned weg gebracht.

          Man kann das in der “Web Station” -> “Skript Einstellungen” in dem angelegtem Profil unter “Kern” -> memory_imit einstellen.
          lg
          Andreas

  7. Servus Andreas,
    Ich habe nach der Anleitung aus deinem neuen Buch Nextcloud installiert DSM 7.x
    Heißt ich hab mich durchgekämpft, und schlussendlich kann ich auf Nextcloud zugreifen.

    p.s. Beim Starten der MariaDB musste ich eine PWD vergeben. (TCP an haken)
    Und genau dieses brauchte ich denn bei der Installation von Nextcloud
    Man vergibt nur ein PWD
    Ich hab lange gebraucht um heraus zu finden das der User root ist, aber nicht der DS root sonder der von MariaDB
    Dann ist die Installation problemlos durchgelaufen, ich hab das herausgefunden als ich versuchte den User manuell anzulegen, und auch keinen Zugriff bekommen hattbe.

    An der Installation des Documentserver bin ich gescheitert.-
    Der Befehl bringt nur die Fehlermeldung das die Installation gescheitert ist.
    Dieser Befehl bringt eine Fehlermeldung die mit occ zu tun hat, “nicht gefunden, kein Zugriff ?”. auch als root nicht möglich.
    sudo -u http php74 -d memory_limit=512M occ app:install documentserver_community

    Egal, wenn ich dann weiter lese was alles noch nötig ist, denke ich das ich die Nextcloud nicht so dringend brauche 😉
    Was noch dazu kommt,
    Die zusätzlich installierten App’s werden nicht angezeigt ? Ich hatte lange ein Version auf einen Pi laufen gehabt, da wurde oben in der Zeile wo
    Datei, Kalender, Kontakte u.s.w angezeigt werden, dann ein paar Punkte dargestellt, und man konnte das App’s Menü ausklappen. Das ist auch weg ?
    Fehler, geplant ich weiß es nicht.

    Ich hab jetzt nicht den Nerv mich weitere Stunden damit auseinander zu setzen 😉
    Wie werde ich die Installation wieder los ?
    Ohne das irgend welche Reste den Betrieb der DS beeinträchtigen ?

    lg
    Andi

    p.s.
    Vielleicht versuche ich das VM Image das von Nextcloud angeboten wird.
    Nur so aus Neugierde

    1. Hallo Andreas,

      Die Installation von MariaDB ist im Buch in Kapitel 17.2 erklärt, dort findet sich auch ein Hinweis zum root-User. Allerdings fehlen im Nextcloud-Kapitel die QUerverweise, das werde ich in der nächsten Auflage korrigieren.

      occ ist ein Befehlssatz von Nextcloud, der wird nicht in der DSM-Kommandozeile registriert und ist daher nur in /web/nextcloud/ verfügbar. Um occ-Befehle auszuführen musst du vorher mit cd /volume1/web/nextcloud das Verzeichnis wechseln.

      Das App Menü ist seit einigen Versionen im Benutzer-Menü zu finden (runder Kreis mit dem Benutzer Initialen/Avatar) ganz rechts in der Kopfzeile.

      Um Nextcloud zu entfernen sind folgende Schritte notwendig:
      – Nextcloud-Ordner unter /web löschen
      – freigegebener Ordner für Nextcloud-Daten löschen
      – in phpMyAdmin die Nextcloud-Datenbank und den, von der Installation, angelegten Benutzer löschen
      – falls angelegt, den virtuellen Host löschen
      – das PHP-Profil löschen
      – eventuell die Einträge für das Webserver-Timeout zurücksetzen/entfernen, die stören aber an sich nicht weiter
      – eventuell installierte Pakete (MariaDB, Apache, WebStation, etc…) deinstallieren, sofern sie nicht für andere Dienste gebraucht werden

      Das VM Image ist recht neu, dazu kann ich noch nicht viel sagen, als Alternative würde sich noch Docker anbieten, da ist die Installation auch recht einfach und schnell erledigt.

      Grüße
      Andreas

  8. Hallo,
    habe das Tutorial durchgearbeitet,
    Bei der mysql.php können die Änderungen nicht durchgeführt werden, die Einträge, bis auf einen, gibt es nicht.
    Kann es sein das, bei ds7.01 wieder alles anders ist?
    Beim aufruf im Browser wird Fehler 500 angezeigt.

    1. Hallo Christian,

      Danke für den Hinweis. Mit NC 23 sieht die MySQL.php etwas anders aus, das wäre nicht das Problem, man müsste einfach nur den einen Eintrag löschen, allerdings macht scheinbar das letzte MariaDB-Update wieder Probleme. Ich habe eine entsprechende Lösung im Artikel ergänzt.

      Der Fehler 500 kommt das erste mal wenn du versuchst Nextcloud aufzurufen?
      Der Fehler 500 ist nicht besonders Eindeutig, er deutet meist darauf hin, dass der Webserver nicht richtig konfiguriert ist. Das kann viele gründe haben. Entweder ist dem vhost der falsche Backend-Server zugewiesen, der Zugriff auf den vHost bzw. den Webserver im allgemeinen gelingt nicht oder andere Probleme.
      Hier solltest du zuerst im PHP-Profil die Fehlerausgabe aktivieren und Nextcloud erneut aufrufen. Sollten im Browser keine Fehler angezeigt werden, musst du im Apache-Error-Log bzw. im nginx-Error-Log nach Fehler suchen.

      Grüße
      Andreas

  9. Erstmal vielen Dank für die ausführliche Anleitung. Die Installation hat dadurch sehr gut funktioniert.
    Allerdings bekomme ich jetzt noch einen Fehler angezeigt:

    Manche Dateien haben die Integritätsprüfung nicht bestanden. Weitere Informationen um den Fehler zu beheben findest Du in unserer Dokumentation↗. (Liste der ungültigen Dateien … / Erneut scannen…)

    Results
    =======
    – core
    – INVALID_HASH
    – .htaccess

    Ist dir der Fehler bekannt und weißt du wie er behoben wird?
    Habe an der .htaccess noch nichts geändert. Auch nicht die ReWrites für Caldav, etc.

    Nutze keinen virtuellen Host

    1. Hallo Nils,

      Bei der htaccess hatte ich das Problem noch nie. ALlerdings hab ich die letzten beiden Updates das Problem einer anderen Datei gehabt.
      Üblicherweise hilft folgendes:
      Die Nextcloud-Version als zip Herunterladen, die Datei entpacken und die installierte damit ersetzen. Dann die Rechte für die Datei anpassen und zuletzt die Integritätsprüfung nochmal durchführen lassen (entweder per Link direkt in der Meldung oder per occ).

      Ich hoffe das behebt dein Problem.

      Grüße
      Andreas

      1. Wenn ich die .htaccess neu reinkopiere, kommt folgendes:
        – core
        – EXTRA_FILE
        – @eaDir/.htaccess@SynoResource
        – @eaDir/.htaccess@SynoEAStream

        Nachdem ich die dann gelöscht hatte, kam endlich der grüne Haken.

        Danke für die Hilfe

        1. Hallo Nils,

          @eaDir wird von DSM z.b. für Thumbnails angelegt. Nextcloud lässt außer den eigenen Dateien keine anderen Dateien im Verzeichnis zu und bemängelt das.
          Ich vermute das hat DSM beim Kopieren der htaccess angelegt.

          Grüße
          Andreas

  10. Hallo Andreas,
    vielen Dank für die Anleitungen zur Installation. Hat auch (fast) gut funktioniert. Ich verzweifle an zwei Problemen:
    1. In Verwaltung “externer Speicher”:
    – einbinden mittels SMB –> hier taucht folgende Meldung auf: “”smbclient” ist nicht installiert. Das Hinzufügen von “SMB/CIFS”, “SMB/CIFS mit OC-Anmeldung” ist nicht möglich. Bitte wende Dich zur Installation an den Administrator.”
    Frage: Wie kann ich diesen installieren? SMB ist im DSM aktiviert und funktioniert mit anderen Geräten.

    2. Fehlermeldung in Verwaltung “Übersicht”:
    – Fehler: “Manche Dateien haben die Integritätsprüfung nicht bestanden…”
    – hier stört sich Nextcloud an der Datei “MySQL.php”, obwohl die Änderungen nach der Installation rückgängig gemacht wurden, aber auch die Datei durch die Originaldatei ersetzt wurde.
    Kann man die Fehlermeldung abstellen oder muss man die ignorieren.

    Viele Grüße, Tilo

    1. Hallo Tilo,

      1. SMB habe ich nie zum laufen gebracht auf der DiskStation. Früher stand in der Doku dass SMB nicht ordentlich auf Linux läuft. Mittlerweile steht in der Doku dass die Funktion auf Linux eingeschränkt ist. Prinzipiell hat die DiskStation einen SMB-Service aber der muss aktiviert werden, ich kann dir aber nicht sagen welche Einstellungen dafür notwendig sind, damit Nextcloud darüber kommunizieren kann und ob das mittlerweile überhaupt funktioniert.
      Ich verwende WebDAV für die Einbindung von freigegebenen Ordnern der DS.

      2. Probier mal folgendes: Kopier die Originaldatei hinein und pass die Rechte an so wie in den Anleitung beschrieben. Geh dann nochmal zur Fehlermeldung und klick dort auf Integritätsprüfung erneut durchführen (oder so ähnlich). Das passiert nämlich nicht von alleine sondern nur im Zuge der Installation bzw. eines Updates. Alternativ kannst du die Prüfung auch über die Kommandozeile per occ-Befehl ausführen.

      Grüße
      Andreas

      1. Hallo Andreas,
        vielen Dank für die Hinweise. Aber die Integritätsprüfung wird weiterhin nicht bestanden. Bezüglich des occ-Befehl fehlt mir die momentan die Grundlage.

        Das Ergebnis der ungültigen datei sagt folgendes aus:
        “Results
        =======
        – core
        – INVALID_HASH
        – lib/private/Setup/MySQL.php
        Raw output
        ==========
        Array(
        [core] => Array (
        [INVALID_HASH] => Array (
        [lib/private/Setup/MySQL.php] => Array….”

        Vielleicht kannst du ja etwas damit anfangen.

        Für ein weiteres Problem brauche ich auch noch Unterstützung. Der Cron-Job wird nicht automatisch ausgeführt. Die Aufgabe wurde in Synology erstellt (analog deiner Anleitung), aber die funktioniert nicht. Bei “manueller” Ausführung über Komandozeile
        “sudo -u http php74 /var/services/web//cron.php”
        kommt die Fehlermeldung:
        “OCP\HintException: [0]: Memcache \OC\Memcache\APCu not available for local cache (Is the matching PHP module installed and enabled?)”
        Ist das unter DSM 7 anders als bei DSM 6?
        Oder wo muss ich die erforderlichen Änderungen vornehmen?

        Viele Grüße, Tilo

        1. Hallo Tilo,

          Es scheint die Datei immer noch nicht zu stimmen. Wichtig ist, dass die die Datei aus dem Installations-Archiv von Nextcloud holst und zwar genau die Version die du gerade installiert hast. Entpacke das Archiv am besten direkt auf der DiskStation und kopier dann die Datei in das richtige Verzeichnis unter /web. Wichtig ist auch, die ganze Datei zu kopieren und nicht nur denn Inhalt und dann die Rechte richtig zu setzen (Owner http:http und Rechte 777).

          Wie du den Cron richtig einrichtest findest du in meinem Artikel Nextcloud optimieren und dort ist der Abschnitt “Cron-Probleme ab Nextcloud 21 beheben” wichtig.

          Grüße
          Andreas

  11. Hallo Andreas,
    beim Aufsetzen von OnlyOffice scheitere ich am Entpacken aus dem libstdc++6_8.3.0-6_amd64.deb-Archiv:

    “Entpackt folgende Datei: data.tar\.\usr\lib\x86_64-linux-gnu\libstdc++.so.6.0.25”

    Gibt es eine Möglichkeit, dies zu tun, ohne das entsprechende GNU-Projekt zu installieren? Danke 🙂

  12. Servus Andreas. Vielen Dank für das Update.
    Wechsel auf DSM 7.0 hat auch bei mir reibungslos geklappt. Zeitgleich NC Update zu Version 23 erfolgreich installiert und Fehlermeldungen behoben.

    Nun beschäftige ich mich mit Nextcloud Backup. Hast Du da schon Erfahrungen? Der Plan war eigentlich auf eine weitere NC Instanz, die ich lokal hoste zu sichern. Allerdings scheint das am fehlenden SMB Client zu scheitern (Du schreibst dazu an anderer Stelle etwas). Bin jetzt auf Sicherung per (s)ftp umgeschwenkt, allerdings rödelt die Nextcloud jetzt schon seeeehr lange und bleibt im Wartungsmodus – nicht sehr vertrauenerweckend.

    Bleibt trotzdem das Interesse an Backup NC (1) zu NC(2)(lokal). Das Paket (SMB Client) findet sich nicht in den PHP 7.4 Erweiterungen.

    Gruß
    Ben

    1. Update: Nach nunmehr 10 Stunden ließ sich der Spuk nur beenden durch Aufheben des Wartungsmodus. Also auf (s)ftp klappt nicht – mir schleierhaft warum.

  13. Gibt es eigentliche eine Möglichkeit einen Turn-Server für Nextcloud Talk unter DSM 7 zu installieren?
    Talk klingt ja ganz interessant, aber funktioniert nicht wirklich, wenn man nicht im gleichem Netzwerk ist.

  14. Vielen Dank für guten Anleitungen.
    Ich bekomme allerdings 2 Warnmweldungen und ich meine da haben viele Probleme mit:
    Dein Webserver ist nicht richtig konfiguriert, um “/.well-known/caldav” aufzulösen. Weitere Informationen hierzu findest Du in unserer Dokumentation ↗.
    Dein Webserver ist nicht richtig konfiguriert, um “/.well-known/carddav” aufzulösen. Weitere Informationen hierzu findest Du in unserer Dokumentation ↗.
    Unter WebStation -> Webdienstportal habe ich einen Virtuellen Host eingerichtet. Das funktioniert auch alles wunderbar. Bis auf diese Fehlermeldung.

    1. Hallo,

      interessant, gerade bei einem vHost sollte das Problem nicht auftreten.
      Kann es sein, dass du Nextcloud nicht mit dem selben Hostnamen installiert hast, den du für den vHost verwendest?
      Wirf mal einen Blick in die .htaccess deiner Nextcloud (unter /web/Nextcloud/)

      etwas weiter unten solltest du folgende Zeilen finden:
      RewriteRule ^\.well-known/carddav /remote.php/dav/ [R=301,L]
      RewriteRule ^\.well-known/caldav /remote.php/dav/ [R=301,L]

      Sofern du Nextcloud mit einer URL ohne Unterverzeichnis aufrufst (z.B. cloud.meinedomain.com) sollte alles in Ordnung sein.

      Grüße
      Andreas

      1. Hallo Andreas,
        vielen Dank für die schnelle Antwort.

        Hmm, sehr seltsam.
        Ich habe bei meinem Hoster per CNAME eine Weiterleitung auf meine Fritzbox via myfritznet eingetragen.
        wenn ich jetzt cloud.xxxhosterxxx.de aufrufe, komme ich direkt auf meine Nextcloud.
        Beim vhost ist als als hostname auch nur cloud.xxxhosterxxx.de eingetragen und als Dokument-Root web/nextcloud
        Die Nextcloud selber ist ganz nach standart unter /web/nextcloud installiert.

        Einzige Abweichung ist, dass ich bei der Fritzbox eingetragen habe, dass der Port 443 auf einen anderen Port also X443 verweist.
        Beim vhost habe ich dann entsprechend den Punkt “https” angekreuzt und auch dort den Port X443 eingetragen.
        Das funktioniert ja auch alles. Die Fehlermeldung hat denke ich auch nichts damit zu tun, dass ich nicht den Standart 443 port intern verwende?

        In der .htaccess finde ich unter dem Punkt folgendes:
        RewriteEngine on
        RewriteCond %{HTTP_USER_AGENT} DavClnt
        RewriteRule ^$ /remote.php/webdav/ [L,R=302]
        RewriteRule .* – [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
        RewriteRule ^\.well-known/carddav /remote.php/dav/ [R=301,L]
        RewriteRule ^\.well-known/caldav /remote.php/dav/ [R=301,L]
        RewriteRule ^remote/(.*) remote.php [QSA,L]
        RewriteRule ^(?:build|tests|config|lib|3rdparty|templates)/.* – [R=404,L]
        RewriteRule ^\.well-known/(?!acme-challenge|pki-validation) /index.php [QSA,L]
        RewriteRule ^(?:\.(?!well-known)|autotest|occ|issue|indie|db_|console).* – [R=404,L]

        Vielen Dank für deine Mühe.
        Jo

  15. Hallo Andreas,
    auf der Synology mit DSM 7 lässt sich der Apache22 oder Apache24 timeout auch in der Webstation unter Kern erhöhen
    default_socket_timeout (standart = 60) diesen wert auf 3600 setzen und der Upload timitout 504 ist damit behoben.
    gruß Alex

  16. Hallo Andreas,
    muss es beim WebserverTimeOut “vi /var/packages/WebStation/target/misc/VirtualHost-nginx-mustache” nicht “… nginx.mustache” heißen?
    Zumindest fide ich die Datei nur mit Punkt statt Bindestrich zwischen nginx und mustache. Das betrifft übrigens auch Seite 518 im DSM 7 Buch.
    Gruß Leo

  17. Ich habe Nextcloud auf DS218j installiert. Jetzt möchte ich zu DS918+ wechseln. Ist nach einer Migration (HDDs in DS918 stecken und den Anweisungen folgen) Nextcloud dann auf der neuen NAS nutzbar oder muss ich Nextcloud wieder Schritt für Schritt neu installieren?

    1. Hallo Leo,

      prinzipiell ist Nextcloud dann lauffähig. Du musst nur sichergehen dass die neue DS die selbe IP-Adresse zugewiesen bekommt wie die alte oder gegebenenfalls die Einstellungen im Netzwerk und am Router anpassen.

      Grüße
      Andreas

  18. Alternative zur obigen Anleitung:

    Ich betreibe seit 2-3 Jahren eine Nextcloud auf einer Synology 218+ über Docker. Ich habe mich dazu einfach über SSH in das Admin-Konto eingeloggt, eine `docker-compose.yml` mit folgendem Inhalt erstellt und abschließend alles per docker-compose (`sudo docker-compose pull` und `sudo docker-compose up -d`) gestartet – eigentlich super simpel. Alle Einstellungen findet man am jeweiligen Image auf Docker-Hub. Grundsätzlich sollte man das auch über die Docker-Oberfläche in DSM einrichten können.

    Den Dynamic DNS Name habe ich direkt im DSM eingebunden und dort auch konfiguriert, sodass Let’s Encrypt Zertifikate (HTTPS) dafür bezogen werden. Ich selbst nutze spdns.de

    Vorteile:
    * Man spart sich die umfangreiche Konfiguration in DSM
    * Man ist mit einer deutlich aktuelleren Version der Datenbank, von PHP und des Webservers unterwegs, als Synology diese anbietet
    * Keine Sicherheits- & Einrichtungswarnungen seitens Nextcloud
    * Das Nextcloud-Image integriert fast alles Wünschenswerte, wie CRON und OPCache

    Nachteile:
    * Man sollte ssh, docker und docker-compose bedienen können
    * Für Updates muss man sich über ssh einloggen, ggf. die `docker-compose.yml` Datei über vim editieren und docker-compose bedienen
    * ich bin mir nicht sicher, ob ein Backup der Diskstation die Docker Volumes sichert
    * Die von mir genutzten Images setzen eine X86 basierte Diskstation voraus. Für ARM basierte Diskstations müsste man andere Images suchen & verwenden

    docker-compose.yml:
    “`
    version: ‘2’

    services:

    nextcloud:
    image: hoellen/nextcloud:22.2
    restart: unless-stopped
    environment:
    – UID=1000
    – GID=1000
    – TZ=Europe/Berlin
    – DOMAIN=
    – DB_TYPE=mysql
    – DB_NAME=nextcloud
    – DB_USER=nextcloud
    – DB_PASSWORD=
    – DB_HOST=db
    volumes:
    – data:/data
    – config:/config
    – apps:/apps2
    – themes:/nextcloud/themes
    ports:
    – 8080:8888
    networks:
    – nextcloud
    depends_on:
    – db

    db:
    image: mariadb:10.7
    restart: unless-stopped
    #cotainer_name: nextcloud_db
    volumes:
    – db:/var/lib/mysql
    environment:
    – MYSQL_ROOT_PASSWORD=
    – MYSQL_DATABASE=nextcloud
    – MYSQL_USER=nextcloud
    – MYSQL_PASSWORD=
    networks:
    – nextcloud

    networks:
    nextcloud: {}

    volumes:
    apps:
    config:
    data:
    themes:
    db:
    “`

Schreibe einen Kommentar zu Jobode Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht.