LibreOffice вже давно є найкращим безкоштовним рішенням для інструментів продуктивності в Linux. Однак окремий клієнт LibreOffice обмежений і просто не обмежує його, коли мова йде про онлайн, продуктивність Google і співпрацю в стилі Google Drive.
Ось тут і підходить Collabora. Це модифікована версія Libre Office Online з десятками функцій, які можна порівняти з багатьма власними офісними інструментами для Інтернету. Найкраще те, що програмне забезпечення можна інтегрувати безпосередньо в багато хмарних рішень, що розміщуються на власному сервері. Ось як ви можете інтегрувати Libre Office з NextCloud.
Налаштування програмного забезпечення Collabora дещо втомливе, але воно того варте, особливо для тих, хто хоче розмістити власне офісне рішення під Linux.
Примітка: для використання програмного забезпечення Collabora потрібен сервер Docker Nextcloud з дійсним сертифікатом SSL. Сервер Snap Nextcloud, на жаль, не працюватиме.
Налаштуйте Nextcloud на сервері Ubuntu
Використання Collabora на Nextcloud починається з сервера Nextcloud у стилі Docker. Щоб почати налаштування, інсталюйте Docker та витягніть останній контейнер Nextcloud з Docker Hub.
Пам’ятайте, що це налаштування Collabora найкраще працює з сервером Ubuntu, тому підручник буде зосереджено на ньому. Однак, якщо ви не використовуєте сервер Ubuntu, дотримуйтесь, оскільки інструкції дуже схожі на більшості систем.
sudo docker pull undeadhunter/nextcloud-letsencrypt
Витягування контейнера Nextcloud Docker дуже схоже на встановлення Snap. Налаштування чи налаштування не потрібні. Замість цього вийдіть із Root та перейдіть до звичайного користувача.
Примітка: щоб отримати доступ до Collabora за межами локальної мережі, вам потрібно налаштувати SSL за допомогою Nextcloud і Docker. Зверніться до офіційної документації, щоб дізнатися, як це налаштувати.
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
Якщо команда успішна, Nextcloud має бути запущений. Доступ до нього через веб-браузер:
https://ip.address:8080
Виконайте кроки, щоб налаштувати інсталяцію Nextcloud у контейнері Docker. Після завершення відкрийте нову вкладку та згенеруйте новий сертифікат SSL за допомогою LetsEncrypt.
sudo docker exec -it nextcloud-crypt /certbot.sh
Налаштуйте Collabora
Сервер Nextcloud Docker запущено та працює. Далі настав час налаштувати сервер Collabora, щоб він міг взаємодіяти з Nextcloud та плагіном Collabora Office.
Як і Nextcloud, програмне забезпечення Collabora також має працювати в образі Docker. Витягніть останню версію серверного програмного забезпечення Collabora за допомогою команди docker pull:
sudo docker pull collabora/code
Collabora має працювати разом із Nextcloud, щоб працювати. За допомогою команди docker run запустіть сервер. Обов’язково відредагуйте команду та змініть «наступна хмарасерверадреса» відповідно до ваших потреб.
Примітка: не видаляйте символи зворотної косої риски!
sudo docker run -t -d -p 127.0.0.1:9980:9980 -e 'domain=nextcloudserveraddress' --restart always --cap-add MKNOD collabora/code
Зворотний проксі Apache
Для ефективної роботи програмному забезпеченню Collabora потрібен зворотний проксі-сервер. Для запуску зворотного проксі потрібен Apache2, тому переконайтеся, що він уже є на сервері. На Ubuntu сервер Apache2 можна легко встановити за допомогою:
sudo apt install lamp-server^
Коли Apache2 налаштовано, використовуйте a2enmod, щоб увімкнути проксі-модулі. Ці модулі важливі, і без них зворотний проксі не працюватиме.
sudo a2enmod proxy sudo a2enmod proxy_wstunnel sudo a2enmod proxy_http sudo a2enmod ssl
Коли модулі працюють, настав час створити новий файл віртуального хосту. У терміналі скористайтеся дотиком, щоб створити новий файл конфігурації.
sudo touch /etc/apache2/sites-available/your-collabora-site.com.conf
Для роботи проксі-сервера, а також програмного забезпечення Collabora потрібен сертифікат SSL. Найшвидший спосіб виконати це завдання – скористатися інструментом LetsEncrypt. У терміналі виконайте таку команду, щоб отримати LetsEncrypt для Apache2.
sudo apt install letsencrypt python-letsencrypt-apache
sudo letsencrypt --apache --agree-tos --email email-address -d collabora-server-ip-or-domain.com
Відкрийте новий файл віртуального хоста за допомогою Nano.
sudo nano /etc/apache2/sites-available/your-collabora-site.conf
Вставте наступний код в Nano:
Ім’я сервера office.your-domain.com
SSLCertificateFile /etc/letsencrypt/live/collabora-server-ip-or-domain.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/collabora-server-ip-or-domain.com/privkey.pem
Включіть /etc/letsencrypt/options-ssl-apache.conf
# Необхідно дозволити закодовані косі риски
AllowEncodedSlashes NoDecode
# Контейнер використовує унікальний непідписаний сертифікат
SSLProxyEngine увімкнено
SSLProxyVerify Немає
SSLProxyCheckPeerCN Вимкнено
SSLProxyCheckPeerName вимкнено
# зберегти хост
ProxyPreserveHost увімкнено
# статичний html, js, зображення тощо, які подаються з loolwsd
# loleaflet є клієнтською частиною LibreOffice Online
ProxyPass /loleaflet https://127.0.0.1:9980/loleaflet retry=0
ProxyPassReverse /loleaflet https://127.0.0.1:9980/loleaflet
# URL-адреса виявлення 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
# Основний веб-сокет
ProxyPassMatch “/lool/(.*)/ws$” wss://127.0.0.1:9980/lool/$1/ws nocanon
# Веб-сокет консолі адміністратора
ProxyPass /lool/adminws wss://127.0.0.1:9980/lool/adminws
# Операції завантаження як, повноекранної презентації та завантаження зображень
ProxyPass /lool https://127.0.0.1:9980/lool
ProxyPassReverse /lool https://127.0.0.1:9980/lool
Натисніть Ctrl + O, щоб зберегти документ, а потім перезапустіть Apache 2 за допомогою:
sudo sytemctl restart apache2
Інтегруйте LibreOffice з Nextcloud
Усі налаштування, необхідні для запуску Collabora, виконано. Все, що залишилося, це інтегрувати LibreOffice з Nextcloud. Щоб увімкнути інтеграцію, відкрийте веб-інтерфейс Nextcloud, виберіть значок шестірні та натисніть кнопку «Програми».
Перегляньте розділ додатків для «Collabora» та натисніть кнопку, щоб встановити його. Потім поверніться до інтерфейсу адміністратора Nextcloud і натисніть «Адміністратор», а потім «Співпраця онлайн».
У розділі «Collabora Online» інтерфейсу адміністратора введіть IP-адресу сервера Collabora Online та натисніть кнопку «Застосувати», щоб зберегти налаштування.
Звідси будь-хто зможе отримати доступ та використовувати Access Nextcloud Collabora з будь-якого ПК через веб-інтерфейс Nextcloud.