LibreOffice se dlouhodobě považuje za špičkové bezplatné řešení pro kancelářské aplikace na platformě Linux. Nicméně, samostatná desktopová verze LibreOffice má své limity, zejména pokud jde o online spolupráci. V porovnání s nástroji jako Google Docs a Diskem Google zaostává.
Právě zde vstupuje do hry Collabora. Jedná se o upravenou verzi LibreOffice Online, která nabízí desítky funkcí srovnatelných s mnoha komerčními internetovými kancelářskými balíky. Nejlepší na tom je, že tento software lze snadno integrovat do různých cloudových řešení, které si sami spravujete. Následující text vám ukáže, jak provést integraci LibreOffice s Nextcloud.
Konfigurace Collabora je sice trochu náročnější, ale investovaný čas se vyplatí, především pro uživatele, kteří si chtějí provozovat vlastní kancelářské prostředí pod Linuxem.
Upozornění: Pro provoz Collabora je nutný Docker server Nextcloud s platným SSL certifikátem. Instalace Nextcloud pomocí Snap bohužel není kompatibilní.
Zprovoznění Nextcloud na serveru Ubuntu
Prvním krokem pro použití Collabora v prostředí Nextcloud je instalace Nextcloud serveru pomocí Dockeru. Pro začátek je třeba nainstalovat Docker a stáhnout nejnovější kontejner Nextcloud z Docker Hubu.
Je důležité mít na paměti, že tento postup pro Collabora je nejlépe otestován na serveru Ubuntu, a proto se tutorial zaměří primárně na tuto platformu. Nicméně, pokud nepoužíváte Ubuntu, můžete se řídit instrukcemi, jelikož kroky jsou v podstatě totožné i na jiných systémech.
sudo docker pull undeadhunter/nextcloud-letsencrypt
Stažení Docker kontejneru Nextcloud je obdobné instalaci pomocí Snap. Nepotřebujete žádné dodatečné nastavení ani konfiguraci. Následně se odhlaste z roota a přepněte se na standardního uživatele.
Poznámka: Pro přístup ke Collabora mimo lokální síť (LAN), je potřeba nakonfigurovat SSL certifikát pro Nextcloud a Docker. Informace o nastavení najdete v oficiální dokumentaci.
sudo docker run -it --name nextcloud --hostname nextcloud-letsencrypt -e CERTBOT_DOMAIN="nextcloud-letsencrypt" -e CERTBOT_EMAIL="email" -p 80:80 -p 443:443 undeadhunter/nextcloud-letsencrypt
Po úspěšném provedení příkazu by měl být Nextcloud spuštěn. Dostanete se k němu pomocí webového prohlížeče:
https://ip.adresa:8080
Následujte instrukce pro dokončení nastavení instalace Nextcloud v Docker kontejneru. Jakmile je dokončeno, otevřete novou kartu a vygenerujte nový SSL certifikát pomocí LetsEncrypt:
sudo docker exec -it nextcloud-crypt /certbot.sh
Konfigurace Collabora
Docker server Nextcloud je nyní funkční. Nyní je čas zprovoznit server Collabora, který umožní komunikaci s Nextcloud a doplňkem Collabora Office.
Podobně jako Nextcloud, i Collabora musí běžet v Docker kontejneru. Stáhněte si nejnovější verzi Collabora serveru pomocí příkazu docker pull:
sudo docker pull collabora/code
Pro správnou funkci musí Collabora běžet vedle Nextcloud. Spusťte server pomocí příkazu docker run. Nezapomeňte upravit příkaz a změnit „adresa-nextcloud-serveru“ na vaši skutečnou adresu.
Upozornění: Nemažte zpětná lomítka!
sudo docker run -t -d -p 127.0.0.1:9980:9980 -e 'domain=adresa-nextcloud-serveru' --restart always --cap-add MKNOD collabora/code
Reverzní proxy Apache
Pro efektivní fungování Collabora je nutné mít nastavenou reverzní proxy. K jejímu spuštění budete potřebovat Apache2, ujistěte se, že jej máte na serveru nainstalovaný. V Ubuntu lze Apache2 snadno nainstalovat příkazem:
sudo apt install lamp-server^
Jakmile je Apache2 nainstalován, použijte a2enmod pro aktivaci proxy modulů. Tyto moduly jsou klíčové a reverzní proxy bez nich nebude fungovat.
sudo a2enmod proxy sudo a2enmod proxy_wstunnel sudo a2enmod proxy_http sudo a2enmod ssl
S aktivními moduly je čas vytvořit nový konfigurační soubor virtuálního hostitele. V terminálu, vytvořte pomocí příkazu touch nový konfigurační soubor:
sudo touch /etc/apache2/sites-available/vas-collabora-stranka.cz.conf
Collabora pro správné fungování potřebuje SSL certifikát pro proxy i software samotný. Nejrychlejší způsob, jak tento úkol splnit, je použít nástroj LetsEncrypt. V terminálu spusťte následující příkaz a získejte LetsEncrypt pro Apache2.
sudo apt install letsencrypt python-letsencrypt-apache
sudo letsencrypt --apache --agree-tos --email vase-emailova-adresa -d adresa-collabora-serveru-nebo-domena.cz
Otevřete nový soubor virtuálního hostitele pomocí Nano:
sudo nano /etc/apache2/sites-available/vas-collabora-stranka.cz.conf
Do Nano vložte následující kód:
Název serveru office.vase-domena.cz
SSLCertificateFile /etc/letsencrypt/live/adresa-collabora-serveru-nebo-domena.cz/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/adresa-collabora-serveru-nebo-domena.cz/privkey.pem
Zahrňte /etc/letsencrypt/options-ssl-apache.conf
# Kódovaná lomítka musí být povolena
AllowEncodedSlashes NoDecode
# Kontejner používá unikátní nepodepsaný certifikát
SSLProxyEngine zapnuto
SSLProxyVerify Žádný
SSLProxyCheckPeerCN vypnuto
SSLProxyCheckPeerName Vypnuto
# udržet hostitele
ProxyPreserveHost je zapnutý
# statické html, js, obrázky atd. slouží z loolwsd
# loleaflet je klientská část LibreOffice Online
ProxyPass /loleaflet https://127.0.0.1:9980/loleaflet retry=0
ProxyPassReverse /loleaflet https://127.0.0.1:9980/loleaflet
# URL pro zjištění WOPI
ProxyPass /hosting/discovery https://127.0.0.1:9980/hosting/discovery retry=0
ProxyPassReverse /hosting/discovery https://127.0.0.1:9980/hosting/discovery
# Hlavní webová zásuvka
ProxyPassMatch „/lool/(.*)/ws$“ wss://127.0.0.1:9980/lool/$1/ws nocanon
# Websocket administrátorské konzole
ProxyPass /lool/adminws wss://127.0.0.1:9980/lool/adminws
# Operace Stáhnout jako, prezentace na celou obrazovku a nahrávání obrázků
ProxyPass /lool https://127.0.0.1:9980/lool
ProxyPassReverse /lool https://127.0.0.1:9980/lool
Stiskněte Ctrl + O pro uložení dokumentu a poté restartujte Apache2 pomocí:
sudo sytemctl restart apache2
Integrace LibreOffice s Nextcloud

Vše potřebné pro spuštění Collabora je nyní nastaveno. Zbývá už jen integrovat LibreOffice s Nextcloud. Pro povolení integrace otevřete webové rozhraní Nextcloud, klikněte na ikonu ozubeného kola a vyberte „Aplikace“.
V sekci Aplikace vyhledejte „Collabora“ a nainstalujte ji kliknutím na příslušné tlačítko. Následně se vraťte do administračního rozhraní Nextcloud, klikněte na „Admin“ a pak na „Collabora Online“.

V sekci „Collabora Online“ v administračním rozhraní vyplňte IP adresu vašeho Collabora Online serveru a kliknutím na tlačítko „Uložit“ nastavení uložte.
Od této chvíle bude mít každý přístup a možnost používat Collabora v rámci Nextcloud z jakéhokoliv zařízení přes webové rozhraní Nextcloud.