Tipps zur NextCloudPi (unter Docker auf QNAP TS-251)

Seit einigen Wochen habe ich mit NextCloudPi etliche Erfahrungen sammeln können. Grundsätzlich erhält sich dieses System wie ein gewohntes NextCloud, allerdings habe ich einige Funktionen (Cron, Einbinden von WebCron, Externe Laufwerke) bisher nicht sauber ans Laufen bekommen. Trotzdem macht es schon Laune, zu sehen, wie sogar ein schwachbrüstiges ARM-NAS (QNAP TS-231+ mit 1 GByte RAM) mit dieser Software bestens läuft.

Was ist wichtig?

  • Die Updates von NextCloud lasse ich über den Updater aus der Weboberfläche laufen, hat bislang immer gut funktioniert. Dass die „NextCloudPi-Admin-App“ nach einem solchen Update als „veraltet“ deaktiviert wird, stört nicht nicht – ich muss die ja nicht aus der NextCloud-Oberfläche heraus aufrufen, sondern kenne meinen lokalen Link (alternativ kann man die App in der App-Verwaltung auch einfach wieder aktivieren, Nebenwirkungen der Warnung habe ich bislang keine festgestellt).

  • [Update, 2019-10-03] Den obigen Absatz habe ich gestrichen – denn tatsächlich ist nach mehrfachen Updates innerhalb der NextCloud-Verwaltungsoberfläche eine Situation erreicht, in welcher das darunterliegende NextCloudPi nicht mehr richtig läuft. Daher empfehle ich, stattdessen ausschließlich die Update-Funktion der Verwaltungsoberfläche von NextCloudPi zu nutzen. [/Update]

  • Nach dem Updaten von NextCloud 15.0.7 auf 16.0.1 habe ich eine Warnmeldung bekommen, dass Indizes der Datenbank fehlen; Abhilfe sei durch Laufenlassen der „occ“-Anwendung im NextCloud-Kommandozeilenmodus möglich. Wie macht man das? Nach einiger Recherche ist das relativ einfach, und ich konnte es selbst mehrfach positiv testen:
    • In der QNAP-App „ContainerStation“ gibt es die Möglichkeit, eine Terminalsitzung des laufenden Containers zu starten (Klick auf „>_„, dem Vorgabepfad /bin/sh folgen)Bildschirmfoto 2019-06-01 um 16.31.37
    • Dann wechselt man in dieser Terminal-Sitzung per cd ins Verzeichnis „/var/www/nextcloud“ (sicherheitshalber immer per „ls -l“ prüfen, wo man sich befindet …)

    • dort gibt man folgenden Befehl ein:

      sudo -u www-data php occ db:add-missing-indices

    • … und tatsächlich läuft „occ“ los und erledigt den Rest. Nicht vergessen, das Terminal nachher wieder zu schließen. Das geht übrigens analog auch für alle anderen optionalen Parameter des occ-Kommandos.

Manchmal bleibt nach Eingriffen in die Konfiguration die NextCloud-Instanz hängen und lässt sich nicht mehr über ihre IP-Adresse oder URL ansprechen. In diesem Fall hilft es, die Anwendung im Container erst einmal per ◼︎ zu beenden und anschließend per -Symbol neu zu starten – hat bei mir bisher immer funktioniert, und war auch nur nach größeren administrativen Eingriffen erforderlich.

Updates folgen …

10 Antworten auf “Tipps zur NextCloudPi (unter Docker auf QNAP TS-251)”

  1. Servus Stefan,

    ich habe hier (https://spr-it.com/it-ideen/oc-mit-qpkg/) bereits einmal mit Dir kommuniziert und dabei wertvolle Tips zum Aufsetzen von NextCloudPi im Docker auf der QNAP-NAS erhalten. Danke nochmal.

    Die läuft auch gut, allerdings gibt es ein kleines Problem, für das ich auch Lösungsansätze habe und mich abermals über ein Coaching bzw. konkrete Umsetzungsshinweise (Wo genau ist was zu „basteln“?) freuen würde …

    Also, ich vermute, dass Dein NAS dauerhaft läuft, sonst hättest Du die Schweirigkeit selbst schon bemerkt: Die Container-Station vergibt bei jedem Neustart eine zufällige MAC-Adresse, so dass die Fritzbox trotz fest vergebener IP für die Cloud trotzdem immer weider erneut angewiesen werden muss, dass dieses Gerät selbständig Ports öffnen darf. (Sie denkt wahrscheinlich: „Ha, Dich kenn ich noch nicht, denn Deine MAC-Adresse ist mir neu!“) Ansonsten funktioniert z.B. die Synchronisierung mit der OSX-Kontakte oder Kalender-App nicht …

    Dasselbe gilt natürlich für den DynDNS-Zugriff von außen. Nervig.

    Auch andere sind genervt und auf Lösungssuche:
    https://forum.qnapclub.de/thread/46004-mac-adresse-fest-einstellen/
    https://forum1.qnap.com/viewtopic.php?p=659804&sid=998585189b0648077058470dc0133717

    Es gibt auch Lösungsvorschläge:
    https://forum.qnapclub.de/thread/42382-mac-adresse-in-container-station-fest-einstellen/
    https://stackoverflow.com/questions/18479242/how-to-set-the-mac-address-for-docker-lxc-containers
    https://stackoverflow.com/questions/42946453/how-does-the-docker-assign-mac-addresses-to-containers

    Meine Frage also, was kann/soll ich tun, wenn ich mein NAS weiterhin zwischendurch auch herunterfahren möchte? Ich verstehe von dem, was die Jungs in den obigen Links schreiben, nur einen Bruchteil …

    Was ich verstanden habe skizziere ich hier mal als durchnumerierte Optionen, so dass Du – wenn Du oder jemand anderes es will – darauf Bezug nehmen kannst:

    Option 1: Ich gebe meiner emulierten NextCloudPi per CLI die Anweisung eine von mir gewünschte MAC-Adresse zu nutzen. Doch wie mache ich das konkret und vor allem natürlich automatisiert? Kann ich den Befehl im Container-Station-GUI angeben? Woanders? Kann ich das per Skript tun, dass bei NAS-Neustart automatisch geladen und ausgeführt wird? Falls ja, wie erstelle und platziere ich so ein Skript?

    Option 2: Geht das oben Angedachte mit dem bereits erstellten Container oder muss ich den bestehenden duplizieren oder gar neu anlegen, (was sehr blöd wäre: die ganze Fummelei noch einmal! Puh!)?

    Falls duplizieren geht und sinnvoll ist: Wie geht das konkret?

    Option 2: Einer in den oben geposteten Links redet von Portainer … Kann man den bestehenden Container dahin umziehen und dort dann den Zwang zur festen MAC-Adresse bequemer veranlassen?

    Schau auch hier:
    https://qnapclub.eu/de/qpkg/466
    https://forum.qnap.com/viewtopic.php?t=133975

    Freu mich abermals um Navigationshilfe und Ratschläge für einen Dummy!!!

    Liebe Grüße,

    Christian

    Liken

  2. Servus, habe ich gemacht … freu mich schon auf Antwort!

    Nachtrag an alle, die das lesen. Es reicht nicht, in der Fritzbox nachträglich der jeweils aktuell angemeldeten Cloud (nach NAS-Neustart) die selbständige Portfreigabe zu gestatten. Auch dann kommt die Synchronisation im lokalen Netz wie von außen nicht in den Gang! Erst nach manuellem Hinzufügen der HTTPS-Portfreigaben für den Port 443 (die Cloud) und den Port 4443 (das Verwaltungspanel) klappt das …

    Liken

  3. Also der Stefan hat mich gecoached: Der Trick ist, nicht in der Container-Station zu fummeln, sondern an den Portfreigaben der FritzBox, also des Routers.

    Wenn die NextCloud im Container läuft, erscheint sie mit der dort fest vergebenen IP in der Liste der Geräte des Heimnetzwerks der FB (Menü Heimnetz/Netzwerk) . Daneben gibt es so ein Editier-Bleistift-Piktogramm. Da habe ich immer draufgeklickt, um die selbständige Portfreigabe sowie manuell noch die HTTPS-Portfreigaben 443 und 4443 zu ergänzen. Dann läuft’s zwar, aber nur solange NAS oder Container-Station nicht neu gestartet werden. Dann ist der Zauber vorbei, weil die Fritzbox die Einstellungen eben auch mit der MAC-Adresse verknüpft, die – wie wir jetzt wissen – ja scheinbar zufallsmäßig fluktuiert.

    Man kann in der FB im Menü Internet/Freigaben die obigen Einstellungen auch MAC-Adressen unabhängig vergeben. Dann kann Container-Station soviel MAC-Adressen erfinden, wie das Programm mag, die FB wendet die Portfreigaben auf jede gleichlautende IP an. Wie das geht? Man klickt auf „Gerät hinzufügen“ und dann im Pulldown auf „IP-Adresse manuell eingeben“: Dann nimmt man die Freigaben vor und speichert ab.

    In der Heimnetzwerkliste seht ihr dann die jeweils aktuelle MAC-Adresse. Im Menü Internet/Freigaben > Detailansicht erscheint die Cloud dann komischerweise kontinuierlich mit einem alten Wert, der das FB-OS aber nicht hindert die gemachten Einstellungen trotzdem zu benutzen. Sie sind dann STABIL. JUCHHUH!

    Liken

  4. Hallo, ich versuche NexcloudPi auf meinem Qnap als docker container zum Laufen zu gekommen.

    Leider bekomme ich folgenden Fehler
    Starting PHP-fpm
    Starting Apache
    Starting mariaDB
    2019-10-31 21:46:32 0 [Note] mysqld (mysqld 10.3.15-MariaDB-1) starting as process 178 …
    Starting Redis
    Starting Cron
    Starting Postfix
    Uninitialized instance, running nc-init…
    file /nc-init.sh not found
    Init done

    hier bleribt da Ganze dann stehen.

    den Container habe ich folgendermaßen erstellt:
    docker run -d -p 4443:4443 -p 20443:443 -p 20080:80 -v /share/CE_CACHEDEV1_DATA/Daten/nextcloudpi:/data –name nextcloudpi ownyourbits/nextcloud-x86:latest 192.168.1.251

    die Wenseite 192.168.1.251:4443 ist nicht erreichbar
    Auf der Webseite 192.168.1.251:20443 steht

    Initializing NextCloudPi for the first time

    Please wait..

    ich habe z.Zt. keine Idee woran das liegt.
    Vielleicht siehst du was ich nicht sehe.
    Mfg
    Milko

    Liken

      1. Hallo Stefan, habe es auch mit der GUI versucht. und nach einigen Fehlschlägen hab ich es hinbekommen.

        Der Fehler lag anscheinend am Image

        docker run -d -p 4443:4443 -p 20443:443 -p 20080:80 -v /share/CE_CACHEDEV1_DATA/Daten/nextcloudpi:/data –name nextcloudpi ownyourbits/nextcloudpi-x86:latest

        Das „pi“ fehlte.

        Nebenbei habe ich das mit dem /var nicht hinbekommen. Hier kamen ständig Fehlermeldungen, dass das Verzeichnis nicht da wäre oder es nicht erstellt bzw. kein Zugriff hätte.
        Dies war über Gui oder commandline das selbe.

        Herzlich Dank für deine Hilfe.

        Gruß Milko

        Liken

  5. Hallo Stephan,
    ich habe meine nextcloud auf der Qnap TS251 erfolgreich zum laufen gebracht jetzt habe ich eine externe usb Disk angeschlossen die unter Terminal Container gemountet und das data verzeichniss drauf kopiert. Es geht alles wunderbar datadir in der config.php angepasst läuft super. Nur habe ich probleme einen automount einzurichten wie und wo, kannst du mir behilflich sein?

    Gruß Werner

    Liken

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google Foto

Du kommentierst mit Deinem Google-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.