Stranger Than Usual

Der alljährliche Nextcloud-Breakdown

Ich mag ja eigentlich nextcloud. Es ist eine gute Möglichkeit, selber eine Datenhaltungssoftware zu hosten, es steht unter der AGPL, also einer freien Lizenz, die verpflichtet, den Quellcode allen Nutzern bereitzustellen, und es hat viele Funktionen und Einstellungsmöglichkeiten.

Die Einstellungsmöglichkeiten sind aber an sich schon ein Problem. Wie ich schon in „Die dreifache Hölle der Nextcloud-Konfiguration“ geschrieben habe, muss man sowohl nginx als Server kompliziert konfigurieren, dann globale PHP-Einstellungen machen und dann auch noch Einstellungen in Nextcloud selbst. Seit ein paar Versionen jetzt auch noch einen separaten Service und Docker für Plugins (wenn man Plugins haben will).

Anstatt also einfach einen kleinen Server zu starten, den ich dann mit nginx als reverse-Proxy dem Internet vorstellen kann, muss ich von Pontius nach Pilatus laufen, um alle Einstellungen zu machen. Ein Nextcloud-Server hat sogar eine Administratorseite, die auflistet, was alles falsch konfiguriert ist. Allein die Tatsache, dass so etwas notwendig ist, sagt schon viel.

Dazu kommt, dass ich immer wieder Ärger mit Updates habe. Eigentlich habe ich es mir einfach gemacht: Ich habe apt-Pakete von einer Drittpartei geladen, von jurisic.org. Damit kann ich Nextcloud einfach über den Paketmanager aktualisieren. Das Problem ist aber: Ein Major-Version-Upgrade von nextcloud geht immer nur auf die direkt nachfolgende Version. Und jurisic überspringt manchmal Versionen.

In diesem Fall hat mir das eine Menge Arbeit gemacht, manuell Updates zu fahren und danach dem Paketmanager zu erklären, dass jetzt alles in Ordnung sei und er wieder übernehmen darf. Viele graue Haare, nur um ein Update zu fahren.

Jetzt kommen natürlich die Leute, die sagen „Nimm doch einfach das Docker-Image von Nextcloud und lass es als Container laufen“. Und um ehrlich zu sein, das ist vermutlich nicht die schlechteste Idee. Ich könnte mir den ganzen PHP-Krams auf dem Server sparen, alles wäre schön gekapselt in einem Container, und meine nginx-Config würde sich auf ein Minimum beschränken.

Trotzdem müsste ich eine Menge umstellen und korrekt konfigurieren, vom Mounten des Datenverzeichnisses in den Container über die Datenbankkonfig bis hin zu den TLS-Zertifikaten. Ganz zu schweigen davon, dass ich auf dem Server bisher überhaupt keine Docker-Installation habe, die ich auch korrekt einrichten muss, ohne über Fallstricke zu fallen, die dort liegen.

Und wenn ich mir diese Mühe mache ist die Frage: gibt es nicht ein weniger komplexes Tool, das für mich dieselben Aufgaben erledigt? Ich nutze Nextcloud derzeit nur für Dateien. Was ich an Features gerne hätte, wäre:

  • Multi-User-Funktionen
  • Teilen von Dateien mit anderen usern und externen Leuten (über einen Link, mit Ablaufdatem, optional mit Passwort)
  • eine Option für Two-Factor-Authentication
  • automatisches Hochladen von Fotos und anderen Dateien von mobilen & Desktop-Clients (insbes. automatisches Hochladen von Android)
  • Dateivorschau für Verbreitete Dateiformate (insbes. Bilddateien)
  • gute Privacy-Optionen für die Nutzer
  • Bonuspunkte: Unterstützung für CalDav und CardDav

Sollte natürlich auch unter einer freien Lizenz stehen. Idealerweise halt kein PHP. Gibt es so etwas? Ich bin es satt, dass mir Nextcloud jedes Jahr einmal zusammenbricht und ich mir Stunden um die Ohren schlage, um die Probleme zu beheben.