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.
Achtung – Editieren auf dem Smartphone
OnlyOffice hat vor einiger Zeit das Editieren auf Mobilgeräten aus der kostenlosen Version entfernt. Wenn ihr OnlyOffice per Docker bereitstellt und keine Lizenz besitzt, könnt ihr auf Mobilgeräten Dokumente nur betrachten, nicht editieren. Solltet ihr dieses Feature benötigen, könnt ihr zur integrierten Version von Collabora wechseln oder Collabora per Docker Container bereitstellen.
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 Ordneronlyoffice
, und darin die beiden Ordnerdata
undlog
. - Ihr benötigt eine gültige Subdomain, die ihr ausschließlich für OnlyOffice verwendet.
Subdomain und SSL-Zertifikat
Wollt ihr auf eure Cloud und OnlyOffice über das Internet zugreifen, sind eine eigene Domain und SSL-Zertifikate unerlässlich. Habt ihr Nextcloud über HTTPS abgesichert, können keine Verbindungen zu externen Diensten via HTTP aufgebaut werden. Auch einige Docker Images setzen standardmäßig eine verschlüsselte Verbindung voraus. Im LAN würde zwar eine lokale Domain und ein selbst-signiertes Zertifikat ausreichen, ich habe das aber nicht getestet und kann daher nicht sagen, ob OnlyOffice das zulässt, wenn ja, dann ist vermutlich eine zusätzliche Konfiguration des Containers notwendig.
Für die Anleitung gehe ich davon aus, dass ihr eine Subdomain (DDNS-Domain) eingerichtet habt, die auf eure externe IP verweist. Wie ihr Domains und Zertifikate auf eurer DiskStation einrichtet, könnt ihr hier nachlesen.
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.
Version “latest”
Mit “latest” erhaltet ihr die, im Moment, neueste Version. Das Image aktualisiert sich aber nicht von selbst und der Container Manager zeigt euch als Version auch immer nur “latest” an. Wenn ihr eine bessere Übersicht wollt, könnt ihr im Dropdown auch die aktuelle Version selbst auswählen. Bei den meisten Images ist das die höchste Nummer. Manchmal sind die Images auch mit Zusätzen wie Alpha, Beta, Stable oder Release gekennzeichnet. Achtet immer darauf eine Stable- oder Release-Version zu verwenden. Wenn ihr euch unsicher seid könnt ihr auch über das blaue Icon die Dokumentation des Images öffnen und dort die aktuelle Version ablesen.
Das Image “latest” kann dafür über den Container Manager mit nur einem Klick aktualisiert werden. Aber diese Funktion ist mit Vorsicht zu genießen, da sich bei Updates Einstellungen, Umgebungsvariablen oder Mounts ändern können.
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.
Webportal via Web Station
Diese Funktion ist neu, ihr könnt dabei einen Zugang zum Container über die Web Station einrichten. Bisher wurde der Zugriff auf den Container per Reverse Proxy umgesetzt. Ich habe mich mit dem Webportal noch nicht eingehend beschäftigt und weiß nicht, ob dadurch der Reverse Proxy ersetz wird. Ich verwende weiterhin den Reverse Proxy (siehe unten).
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.
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.
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).
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.
Namensauflösung im LAN
In vielen privaten Netzwerken kann eine Domain nicht auf eine lokale IP-Adresse aufgelöst werden. Es reicht hier nicht, die Auflösung per Hosts-Datei zu regeln, da auch Nextcloud die Domain auflösen muss. Die Namensauflösung im LAN kann in einigen besseren “Prosumer”-Geräten (z.B. Fritz!box) eingestellt werden. Wenn eurer Router dies nicht beherrscht, müsst ihr einen DNS-Server im LAN (z.B. auf euer DiskStation) einrichten.
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.
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.
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.
Sicherheit und Zugriff
Nutzt ihr eine Firewall, müsst ihr die Container-Sub-Domain natürlich auch berücksichtigen. Anders als zu erwarten greift nicht nur Nextcloud auf diese Domain zu, wenn ihr ein Dokument öffnet muss auch das Endgerät auf die Sub-Domain zugreifen können.
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