Collabora - Online-Office für Nextcloud

Collabora Online basiert auf LibreOffice und ermöglicht innerhalb der Nextcloud die kollaborative Bearbeitung aller gängigen Dokumenten-, Tabellenkalkulations- und Präsentationsformate.

Collabora kann in der Developement-Edition ohne Lizenz kostenlos für 20 gleichzeitige Zugriffe verwendet werden. Um eine Education-Lizenz für Ihre Schule zu beziehen, können Sie unter collaboraoffice.com/subscriptions/#education_institution_or_ngo den Anbieter kontaktieren.

Erfüllte Anforderungen

Diese Anforderungen erfüllt das Schulnetzkonzept:

  • Online Editierfunktion für Text-, Tabellen- und Präsentationsdokumente
  • Ermöglichung der kollaborativen Zusammenarbeit

Installation

Virtuelle Maschine erzeugen

Verwenden Sie hierzu die Beschreibung zur Installation eines virtuellen Linux-Debians.

Dimensionierungsbeispiel der virtuellen Maschine für 750 Benutzer:

  • 2 CPUs
  • 60 GB Festplattenspeicher
  • 8 GB Arbeitsspeicher
  • 1 Netzwerkkarte mit Zugriff auf das Netzwerk LAN_SERVER

Voraussetzungen für verschlüsselte Kommunikation zwischen Nextcloud und Collabora

Damit Collabora erfolgreich in die Nextcloud eingebunden werden kann, ist ein verschlüsselter Zugriff auf Collabora notwendig. Dieser wird im Schulnetzkonzept über den Reverse-Proxy von OPNsense realisiert. Legen Sie hierfür bei Ihrem Provider für die öffentliche Domäne Ihrer Schule eine weitere Subdomain an - z. B. collabora.ihre-schule.de - und erledigen Sie für die Subomain folgende Arbeitsschritte der Anleitung zu OPNsense:

  • Vollqualifizierte Domänennamen für Schulnetzdienste
  • Installation und Konfiguration des Reverse-Proxy-Servers
  • Installation und Konfiguration der automatisierten Zertifikatsverwaltung

Docker installieren

apt update
apt install sudo -y

# Notwendiges Repository hinzufügen
sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"

# Docker installieren
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

Collabora-Docker einrichten

Mit den folgenden Schritten richten Sie den Collabora Online Docker für Ihre Nextcloud mit deutschem Wörterbuch ein. Ersetzen Sie nextcloud.ihre-schule.de bzw. www.nextcloud.ihre-schule.de an den entsprechenden Stellen durch die URL Ihrer Nextcloud. Blassen sie dabei die doppelten Backslashes.

docker pull collabora/code
docker run -t -d -p 127.0.0.1:9980:9980 -e 'domain=nextcloud\\.ihre-schule\\.de|www\\.nextcloud\\.ihre-schule\\.de' -e 'dictionaries=de' --restart always --cap-add MKNOD collabora/code

Apache Reverse-Proxy installieren

apt install apache2
a2enmod proxy
a2enmod proxy_wstunnel
a2enmod proxy_http
a2enmod ssl

Webserver (Apache) einrichten

Zunächst erzeugen Sie eine Konfigurationsdatei für Collabora. Beachten Sie, dass in der Konfiguaraionsdatei die letzte Zeile eine Leerzeile ist, und ersetzen Sie collabora.ihre-schule.de mit Ihrer eigenen Collabora-Subdomain.

vim /etc/apache2/sites-available/collabora.conf
Datei /etc/apache2/sites-available/collabora.conf
<VirtualHost *:80>
ServerName collabora.ihre-schule.de:443

# Encoded slashes need to be allowed
AllowEncodedSlashes NoDecode

# Container uses a unique non-signed certificate
SSLProxyEngine On
SSLProxyVerify None
SSLProxyCheckPeerCN Off
SSLProxyCheckPeerName Off

# keep the host
ProxyPreserveHost On

# static html, js, images, etc. served from loolwsd
# loleaflet is the client part of LibreOffice Online
ProxyPass           /loleaflet https://127.0.0.1:9980/loleaflet retry=0
ProxyPassReverse    /loleaflet https://127.0.0.1:9980/loleaflet

# WOPI discovery URL
ProxyPass           /hosting/discovery https://127.0.0.1:9980/hosting/discovery retry=0
ProxyPassReverse    /hosting/discovery https://127.0.0.1:9980/hosting/discovery

# Main websocket
ProxyPassMatch "/lool/(.*)/ws$" wss://127.0.0.1:9980/lool/$1/ws nocanon

# Admin Console websocket
ProxyPass   /lool/adminws wss://127.0.0.1:9980/lool/adminws

# Download as, Fullscreen presentation and Image upload operations
ProxyPass           /lool https://127.0.0.1:9980/lool
ProxyPassReverse    /lool https://127.0.0.1:9980/lool

# Endpoint with information about availability of various features
ProxyPass           /hosting/capabilities https://127.0.0.1:9980/hosting/capabilities retry=0
ProxyPassReverse    /hosting/capabilities https://127.0.0.1:9980/hosting/capabilities
</VirtualHost>

#wichtig: Leerzeile als letzte Zeile der Datei!

Die Default-Konfiguration des Webservers deaktivieren, die Konfiguration für Collabora aktivieren und den Webserver neu starten:

a2dissite 000-default.conf
a2ensite collabora.conf
systemctl restart apache2

Collabora-App in der Nextcloud einrichten

Melden Sie sich als Administrator in der Nextcloud an und suchen Sie unter Apps nach "Collabora Online".

Klicken Sie neben der App auf "Herunterladen und aktivieren". Wechseln Sie anschließend zu den Nextcloud-Einstellungen und dem neuen Unterpunkt "Collabora online". Klicken Sie darin auf "Verwenden Sie Ihren eigenen Server" und tragen als URL die Collabora-Subdomain ihre Schule ein (z. B. https://collabora.ihre-schule.de).

Von nun an können Sie Text-, Tabellen und Präsentationsdokumente direkt in der Nextcloud mit Collabora bearbeiten.

Wartung

Update des Collabora-Dockers

docker pull collabora/code

Sofern während des Pull-Befehls neue Versionen der Collabora-Komponenten geladen wurden, müssen...

  • der Name des aktuellen Collabora-Dockers herausgefunden,
  • der aktuelle Collabora-Docker gestoppt und
  • ein aktualisierter Collabora-Docker gestartet werden.
# Herausfinden der Container-ID des aktiven Collabora-Dockers:
docker ps

# Anhalten und Löschen des aktiven-Collabora-Dockers:
docker stop CONTAINER_ID
docker rm CONTAINER_ID

#Einen neuen Collabora-Docker starten (s. oben - Achtung richtige Domain eintragen!) :
docker run -t -d -p 127.0.0.1:9980:9980 -e 'domain=nextcloud\\.ihre-schule\\.de|www\\.nextcloud\\.ihre-schule\\.de' --restart always --cap-add MKNOD collabora/code

Letzte Aktualisierung der Seite: 2020-11-25 21:38