OnlyOffice als Docker Container in Nextcloud auf der Synology DiskStation integrieren (DSM 7.2 und höher)

OnlyOffice als integrierte Office-Lösung wurde mittlerweile von Collabora abgelöst. Wer OnlyOffice Collabora vorzieht, kann, mit nur wenig Aufwand, (die entsprechende DiskStation vorausgesetzt) OnlyOffice als Docker Container bereitstellen. Wer dabei bei der kostenlosen Lizenz bleibt, muss sich auf Mobilgeräten allerdings mit einem reinen Lesemodus begnügen. Das mobile Editieren ist nur mit der kommerziellen Lizenz möglich.

Vorbereitung

Bevor wir loslegen, hier eine kleine Checkliste an Dingen die ihr benötigt.

  • Nextcloud, installiert auf der DiskStation, eine Anleitung dazu findet ihr in diesem Artikel. Nextcloud läuft dabei direkt am Webserver der DiskStation. Ihr könnt OnlyOffice als Docker Container auf der DiskStation auch für eine Nextcloud-Installation auf einem anderen Gerät oder Nextcloud als Docker Container bereitstellen. In diesen Fällen kann aber eine zusätzliche Konfiguration notwendig sein, um die Kommunikation mit dem Container sicherzustellen.
  • Eine DiskStation mit installiertem Container Manager (Docker). Diesen findet ihr im Paket-Zentrum. Sollte das nicht der Fall sein, ist eure DiskStation entweder nicht kompatibel oder ihr habt DSM 7.1 oder niedriger installiert. Ist letzteres der Fall, heißt das Paket noch Docker.
  • Ordner für den Container, üblicherweise werden diese Ordner im freigegebenen Ordner /docker angelegt. Erstellt dort einen Ordner onlyoffice, und darin die beiden Ordner data und log.
  • Ihr benötigt eine gültige Subdomain, die ihr ausschließlich für OnlyOffice verwendet.

Installation

Vergewissert euch noch einmal, ob die folgende Anleitung auch das ist, was ihr erreichen wollt. Nextcloud ist direkt auf der DiskStation installiert, lediglich OnlyOffice wird per Docker bereitgestellt.

OnlyOffice als Docker Container bereitstellen

Öffnet den Container Manager auf eurer DiskStation und wechselt in den Bereich Registrierung. Sucht dort über das Suchfeld nach “onlyoffice”. Achtet darauf, das richtige Image herunterzuladen. Ihr benötigt onlyoffice/documentserver. Das Image “communityserver” enthält keine Office-Editoren, sondern stellt Funktionen bereit, die in unserem Fall Nextcloud übernimmt.
Markiert das Image und klickt auf Download. Wählt jetzt die gewünschte Version herunter.

Image-Suche in der Registry
Image-Suche in der Registry

Der Container Manager wechselt in den Bereich Image und beginnt den Download. Nachdem das Image heruntergeladen wurde, markiert ihr es und klickt auf Ausführen. Ein Dialog führ euch durch die Erstellung eines Containers.

Zuerst vergebt ihr einen beliebigen Namen für den Container. Ihr könnt auch die Ressourcen für den Container einschränken, wenn ihr wollt. Im Leerlauf benötigt der Container quasi keine CPU-Leitung, aber einige Hundert MB RAM (Werte können je nach Nutzung weiter ansteigen). Wie die Ressourcenbelegung des Containers während der Nutzung aussieht, hängt davon ab, wie viele Dokumente gleichzeitig bearbeitet werden bzw. wie viele Nutzer darauf zugreifen.

Aktiviert das Häkchen bei “Automatischen Neustart aktivieren” Sollte der Container durch Fehler oder z.B. einen Absturz der DiskStation nicht ordnungsgemäß beendet werden, wird er dadurch automatisch neu gestartet. Anschließend klickt ihr auf Weiter.

Zuerst müsst ihr die internen Container Ports (443 und 80) auf lokale Ports mappen. Das ist notwendig, da der Container nicht im Hostnetzwerk (also eurer DiskStation) laufen soll, sondern in einem eigenen. Vergebt die lokalen Ports manuell, die Auswahl “Automatisch” kann dazu führen, dass der Container beim Starten nicht immer die selben Portnummer zugewiesen bekommt, das ist aber wichtig um OnlyOffice mit eurer Nextcloud zu verbinden. Da 80 und 443 bereits vom Webserver eurer DiskStation verwendet werden, müsst ihr selbst Nummern eingeben, die noch nicht verwendet werden. Als nächstes müsst ihr die zu Beginn angelegten Ordner mounten. Klickt unter “Volume-Einstellungen” auf Ordner hinzufügen und wählt den vorbereiteten Ordner data (/docker/onlyoffice/data) aus und klickt auf Auswählen. Gebt im Textfeld /var/www/onlyoffice/Data ein. Widerholt den Schritt für den Ordner /docker/onlyoffice/log und gebt /var/log/onlyoffice ein. Anschließend kontrolliert ob unter “Umgebung” die Variable “PRODUCT_EDITION” ohne Wert eingetragen ist, löscht in dem Fall die Variable.
Außerdem fügt ihr eine neue Variable ein “JWT_SECRET” und vergebt als Wert ein sicheres Passwort. Mit diesem Passwort könnt ihr den OnlyOffice-Container zusätzlich absichern, mehr dazu später. Wenn ihr das Paswort nicht verwenden wollt, müsst ihr die Variable “JWT_ENABLE” mit dem Wert “false” einfügen. Scrollt ein wenig nach unten und wählt unter “Netzwerk” “bridge” aus. Weitere Einstellungen sind nicht notwendig. Nach einem Klick auf Weiter seht ihr eine Zusammenfassung. Klickt auf Fertig und der Container wird gestartet.

Erste Einstellungen
Erste Einstellungen
Ports und Ordner-Mounts
Ports und Ordner-Mounts
Umgebungsvariablen
Umgebungsvariablen

Wechselt in den Bereich Container, dort solltet ihr jetzt euren Onlyoffice-Container finden. Markiert den Container und klickt anschließend auf Details. Im Reiter Protokoll könnt ihr die Ausgabe des Containers einsehen. Der Start dauert einige Zeit und erfordert einige Ressourcen. Wartet auf die Meldung "server is up INFO". Der Container ist jetzt einsatzbereit.
Solltet ihr diese Zeile nicht finden, müsst ihr noch etwas warten. Das Ausgabe-Protokoll aktualisiert sich nicht automatisch. Geht zurück in die Container-Übersicht und öffnet das Protokoll erneut um die aktualisierte Ausgabe zu erhalten.

Reverse-Proxy einrichten

Euer Container ist jetzt unter jeder Adresse, unter der eure DiskStation erreichbar ist + den lokalen Ports erreichbar. Ist eure DiskStation per Domain erreichbar, die per SSL-Zertifikat abgesichert ist, würde das schon reichen. Um Dokumente von außen aufrufen zu können, müsstet ihr den lokalen Port aber am Router freigeben. Besser ist es daher, einen Reverse-Proxy mit eigener Sub-Domain einzurichten. Dann muss nur der HTTPS-Port am Router weitergeleitet werden. Das sollte bereits der Fall sein, wenn ihr eure Cloud von außen erreichen könnt. Mehr zu Portfreigaben, Zertifikaten und externer Erreichbarkeit findet ihr in diesem Artikel.

Öffnet die Systemsteuerung und geht in den Bereich Anmeldeportal > Erweitert > Reverse Proxy. Klickt auf Erstellen und vergebt einen beliebigen Namen. Unter Quelle wählt ihr “HTTPS” aus und gebt die Sub-Domain ein und gebt als Port 443 an. Aktiviert zusätzlich noch HSTS. Als Ziel könnt ihr “HTTP” lassen und als Hostname gebt ihr "localhost" ein. Als Port verwendet ihr den lokalen HTTP-Port des Containers. Geht sicher, dass ihr die selbst vergebene Portnummer des Containers eingebt und NICHT die vorgegebene Portnummer 80. Klickt anschließend auf Speichern.

Angaben für den Reverse-Proxy
Angaben für den Reverse-Proxy

Jetzt benötigt ihr für eure Sub-Domain noch ein SSL-Zertifikat, nach dem erstellen des Zertifikats, müsst ihr dieses auch dem Reverse Proxy zuweisen (Systemsteuerung > Sicherheit > Zertifikat > Einstellungen).

Weißt dem Reverse-Proxy das richtige Zertifikat zu
Weißt dem Reverse-Proxy das richtige Zertifikat zu

Der OnlyOffice-Container ist jetzt über eine eigene SSL-gesicherte Sub-Domain erreichbar. Testet das, indem ihr https://eure-sub-domain.com in den Browser eingebt.

Der Container funktioniert und ist erreichbar
Der Container funktioniert und ist erreichbar

Nextcloud konfigurieren

Nachdem wir alles vorbereitet haben, ist es an der Zeit OnlyOffice in der Nextcloud einzurichten. Habt ihr bereits die integrierte Version von Collabora in Verwendung, müsst ihr zuerst die Apps Community Document Server und Nextcloud Office deinstallieren oder zumindest deaktivieren. Letztere müsst ihr auch deaktivieren, wenn ihr bisher Collabora als Docker Container genutzt habt.
Wechselt dazu im Einstellungs-Menü in den App-Bereich. Die App ONLYOFFICE wird weiterhin benötigt. Habt ihr die Apps bisher noch nicht verwendet, ladet euch ONLYOFFICE im App-Bereich (zu finden unter “Büro & Text”) herunter.

Die Connector-App für OnlyOffice
Die Connector-App für OnlyOffice

Wechselt anschließend in die Verwaltungs-Einstellungen und dort in den Bereich ONLYOFFICE. Unter “Die Adresse von ONLYOFFICE Docs” ersetzt ihr die vorgegebene Domain einfach mit der Sub-Domain für den Only-Office-Container und unter “Geheimer Schlüssel” gebt ihr das Passwort ein, dass ihr mit JWT_SECRET für den Container festgelegt habt. Das Passwort ist nicht für einzelne Benutzer sondern für die Anwendung(en) die mit OnlyOffice kommunizieren sollen und dürfen. Denn nur mit dem richtigen Passwort kann eine Anwendung eine Verbindung mit dem OnlyOffice-Container aufbauen.
Klickt anschließend auf Speichern. Ihr könnt an dieser Stelle auch noch diverse Einstellungen für OnlyOffice vornehmen.

Verbindung zu OnlyOffice herstellen
Verbindung zu OnlyOffice herstellen

Das wars auch schon. Ihr könnt jetzt Office-Dokumente direkt in der Cloud öffnen und bearbeiten und dass auch mit mehreren Benutzern gleichzeitig. Die Bearbeitung beschränkt sich, wie schon erwähnt, auf den Browser.

Office-Dokumente direkt in der Cloud öffnen und bearbeiten
Office-Dokumente direkt in der Cloud öffnen und bearbeiten

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 dritte Auflage enthält Aktualisierungen zu DSM 7.1 und den Updates von WebStation, Surveillance Station und Synology Photos.

Das Buch direkt beim Verlag

Das Buch auf Amazon

Related Posts

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert