Nextcloud lokal mit Zertifikaten & Docker

Betreibe schon einige Jahre Nextcloud in Docker. Auch die Maria-DB läuft unter Docker.

Im Docker Container erzeuge ich eigene Zertifikate die ich dann einbinde. Einmal im Jahr setze ich diese beiden Container neu auf und stelle alles neu ein. Die Sicherung wird für jeden Benutzern eingespielt. Dabei gehen einige Stunden drauf.

Gibt es eine einfachere Möglichkeit dieses umzusetzen? Am liebsten wäre mir Variante Docker stop, rm, pull, run

Ein paar Eckdaten

Es sind drei User aktiv mit ungefähr 12 Endgeräten (Windows, Android und Apple)

Nur im lokalen Netzwerk erreichbar. Von Unterwegs wird VPN aufbaut

Es ist nicht ganz klar was du erreichen möchtest… Wenn es um Zertifikate geht würde ich generell von self-signed Zertifikaten abraten - die Probleme kennst du denke ich gut. Wenn du trotzdem diesen Weg gehst erstelle einfach Zertifikate mit längerer Laufzeit… unabhängig von Zertifikate verstehe ich den Grund um die NC regelmässig zu zerstören und dann Backup einspielen… auch noch pro Benutzer (wie soll das gehen)?

Es gab hier eine Dikussion wie wie man AiO mit letencrypt aber ohne externen Zugriff betreiben kann - arbeite dich durch Posts im aio durch.

Meine eigenen Zertifikate haben eine Gültigkeit von 10 Jahren. Das ist nicht das Problem.

Da ich für die Zertifikate in den Docker Container eingreifen muss, um diese zu aktivieren, gehen diese Infos beim neuen Container verloren. Möchte den Nextcloud Container ohne weiteres einfach löschen und wieder neu starten (mit neuer Version).

Sicherung der Dateien, Kontakte, Kalender pro User und später Import.

AIO sagt mir nix. Werde mich dort mal einlesen. Schön das dort auch Lösungen ohne ext. Zugang gibt.

PS NGINX Proxy Manager (ebenfalls unter Docker) habe ich auch schon probiert. Sehr einfach einzurichten. Hat fast auf anhieb funktioniert. Nur ist der ausgelegt für einen Zugriff von aussen.

eine Lösung ohne externen Zugang bleibt bei NC immer ein exot auch wenn man das manchmal hinbiegen kann.

Du musst deine änderungen einfach “persistent” machen - sprich config Files und Zertifikate auf dem host speichern, dann gehen nicht verloren wenn du den Container neu baust.

“Reverse Proxy” ist die andere und vermutlich bessere Alternative. das stimmt überhaupt nicht dass ein Reverse Proxy auf externen Zugriff ausgelegt ist. Vermutlich hast eine Anleitung/Tutorial für Letencrypt geshen - Ja das ist der “normale” Einsatzzweck aber genauso wie du jetzt deine Nextcloud manipulierst kannst du einen Reverse Proxy für rein internen Zugriff mit self-signed Zerts konfigurieren.

und generell wenn du deine NC intern einsperrst warum machst du dir überhaupt die Mühe mit Zertifikaten?

Danke dir für die ganzen Erklärungen

Die Zertifikate muss ich dann in einen Bereich legen wo bereits die anderen “persisten” Daten liegen. Darauf bin ich bisher nicht gekommen. Zusätzlich verlinke ich die Datei “nextcloud-ssl.conf” im System. Das muss ich mir auch mal ansehen. Diesen Weg versuche ich erstmal

Apple hat glaube ich ab iOS/iPadOS Version 13 für die Synchronisation der Kontakte/Kalender den https gefordert. Vorher war auch der http Weg offen.

Dann sehe ich mir den Part “Reverse Proxy” ebenfalls genauer an. Wenn dann aber mit Let’s Encrypt Zertifikaten und automatischen Updates

eher anders rum - bu verbindest weitere Volumes/bind mounts in den Container (es spricht nichts gegen weitere als die “offizielen” mounts)…