Hallo zusammen,
Ich versuche aktuell, eine Nextcloud zum Laufen zu bringen, bei der ich die Daten gerne auf dem NAS ablegen möchte, den Container selbst aber auf dem Host. Dazu habe ich auf dem PVE über die fstab einen CIFS Share (uid und gid = 100033 [www-data]) eingebunden und per mount an den Nextcloud Container weiter gegeben. Dann gab es aber bei der Installation mit dem Turnkey Linux Nextcloud Template einen Fehler, dass die .ocdata Datei im Datenordner fehlt:
Ich dachte, vielleicht liegt das am CIFS mount und habe diesen wieder entfernt. Das seltsame ist: Auch, wenn ich einfach so einen Pfad vom PVE an den LXC mounte, gibt es den Fehler. Ich kann mir das irgendwie nicht erklären, da die Rechte eigentlich da sind und bei der Installation auch andere Dateien vom LXC erstellt werden. Kann mir das jemand von euch erklären? Gibt es irgendwie Restriktionen, dass der LXC keine hidden files erstellen darf oder so?
Zum Reproduzieren:
Ohne den mount läuft die Installation ohne Fehler durch. Woran kann das liegen?
Außerdem nehme ich auch gerne Tipps zur generellen Vorgehensweise an.
Vielen Dank für euren Input im Voraus
Ich versuche aktuell, eine Nextcloud zum Laufen zu bringen, bei der ich die Daten gerne auf dem NAS ablegen möchte, den Container selbst aber auf dem Host. Dazu habe ich auf dem PVE über die fstab einen CIFS Share (uid und gid = 100033 [www-data]) eingebunden und per mount an den Nextcloud Container weiter gegeben. Dann gab es aber bei der Installation mit dem Turnkey Linux Nextcloud Template einen Fehler, dass die .ocdata Datei im Datenordner fehlt:
Your data directory is invalid. Ensure there is a file called ".ocdata" in the root of the data directory.
Ich dachte, vielleicht liegt das am CIFS mount und habe diesen wieder entfernt. Das seltsame ist: Auch, wenn ich einfach so einen Pfad vom PVE an den LXC mounte, gibt es den Fehler. Ich kann mir das irgendwie nicht erklären, da die Rechte eigentlich da sind und bei der Installation auch andere Dateien vom LXC erstellt werden. Kann mir das jemand von euch erklären? Gibt es irgendwie Restriktionen, dass der LXC keine hidden files erstellen darf oder so?
Zum Reproduzieren:
mkdir /mnt/nextcloud_data
chown 100033:100033 /mnt/nextcloud_data
- LXC mit TKL Nextcloud Template (debian-12-turnkey-nextcloud_18.0-1_amd64.tar.gz) erstellen
pct set 101 -mp0 /mnt/nextcloud_data/,mp=/var/www/nextcloud-data/
- LXC starten
- Installation durchführen
- Obiger Fehler erscheint
Ohne den mount läuft die Installation ohne Fehler durch. Woran kann das liegen?
Außerdem nehme ich auch gerne Tipps zur generellen Vorgehensweise an.
- Macht SMB/CIFS bei diesem Vorhaben Sinn, oder wäre NFS besser?
- SMB verschluckt ja die Linux Permissions, was eigentlich nicht so toll ist. Ist das bei NFS anders?
- Bei NFS konnte ich nur NFSv3 im PVE einbinden und wenn ich es richtig verstehe, ist dabei der einzige "Sicherheitsmechanismus" die IP des Hosts. Das wäre mir eher nicht genug.
- Für einen unprivilegierten Container habe ich mich entschieden, weil ich u.a. die Nextcloud App Recognize benutzen möchte und die zB. im offiziellen Nextcloud Docker Container (basierend auf Alpine, keine glibc) keine HW-Unterstützung für Tensorflow bietet. Wie wäre das bei einer "vollwertigen" VM? Hat die virtualisierte CPU da AVX Instruktionen? Bezüglich Sicherheit: Die Nextcloud wird nicht ans offene Internet gehen, sondern nur lokal, bzw per VPN erreichbar sein. Von daher gefällt mir eigentlich die Lösung per unprivilegiertem LXC ganz gut.
Vielen Dank für euren Input im Voraus
Last edited: