Hướng dẫn tích hợp Collabora Online với Nextcloud

Trong bài này vHost sẽ hướng dẫn vài đặt và tích hợp Collabora online với Nextcloud trên hệ điều hành Ubuntu 20.04

Collabora online là gì?

Collabora online là hệ thống self-hosted (tự cài đặt trên máy chủ của mình) office cho phép soạn thảo, chỉnh sửa văn bản dựa trên nền tảng LibreOffice.

Tính năng của Collabora Online

  • Cho phép chỉnh sửa và soạn thảo văn bản, excel, tạo slide trình chiếu hoặc vẽ sơ đồ
  • Hỗ trợ chế độ soạn thảo WYSIWYG (What You See Is What You Get)
  • Hỗ trợ định dạng file DOC, DOCX, PPT, PPTX, XLS, XLSX, ODF
  • Hỗ trợ import và xem bản vẽ từ Visio, Publisher và 100+ công cụ khác
  • Làm việc team work (mọi người có thể cùng làm việc chung trong 1 file docs, sheet, slide …)

Yêu cầu trước khi có thể làm bài lab này

Hướng dẫn tích hợp Collabora Online với Nextcloud

Cài đặt Docker

Cập nhật packet lên version mới nhất và cài đặt docker

sudo apt update
sudo apt install docker.io

Sau khi cài đặt xong docker sẽ tự động start, kiểm tra lại với câu lệnh

systemctl status docker

Download docker image và start docker image

Download image Collabora Online Development Edition từ Docker hub

sudo docker pull collabora/code

Sau khi download xong thì start docker image với câu lệnh sau:

Vui lòng thay thế phần domain s.vhost.vn thành domain hệ thống Nextcloud của bạn, nếu không hệ thống Nextcloud của bạn sẽ không thể kết nối tới Collabora Online

docker run -t -d -p 127.0.0.1:9980:9980 -e 'domain=s\\.vhost\\.vn' --restart always --cap-add MKNOD collabora/code

Sau đó kiểm tra lại với lệnh

docker ps

Cài đặt reverse proxy

Trong bài này giả sử bạn đã cài LAMP stack trên Ubuntu 20.04, nếu bạn chưa cài LAMP stack, bạn có thể tham khảo bài https://vhost.vn/cai-dat-lamp-stack-tren-ubuntu-20-04/.

Mình sẽ tạo VirtualHost sau cho Collabora Online:

sudo nano /etc/apache2/sites-available/collabora.conf

Copy nội dung sau vào và thay domain o.vhost.vn thành domain Collabora của bạn

<VirtualHost *:80>
  ServerName o.vhost.vn
  Options -Indexes

  ErrorLog "/var/log/apache2/collabora_error"
  # Encoded slashes need to be allowed
  AllowEncodedSlashes NoDecode

  AllowEncodedSlashes NoDecode
  SSLProxyEngine On
  ProxyPreserveHost On


  # cert is issued for collaboraonline.example.com and we proxy to localhost
  SSLProxyVerify None
  SSLProxyCheckPeerCN Off
  SSLProxyCheckPeerName Off


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


  # 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


  # Capabilities
  ProxyPass           /hosting/capabilities https://127.0.0.1:9980/hosting/capabilities retry=0
  ProxyPassReverse    /hosting/capabilities https://127.0.0.1:9980/hosting/capabilities

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


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


  # Download as, Fullscreen presentation and Image upload operations
  ProxyPass           /cool https://127.0.0.1:9980/cool
  ProxyPassReverse    /cool https://127.0.0.1:9980/cool
  # Compatibility with integrations that use the /lool/convert-to endpoint
  ProxyPass           /lool https://127.0.0.1:9980/cool
  ProxyPassReverse    /lool https://127.0.0.1:9980/cool

</VirtualHost>

Để reverse proxy có thể hoạt động ta cần enable module cho Apache

sudo a2enmod proxy proxy_wstunnel proxy_http

Enable site o.vhost.vn trên Apache

sudo a2ensite collabora.conf

Restart lại Apache để load cấu hình mới

sudo systemctl restart apache2

Cài đặt SSL cho Reverse Proxy

Cài đặt certbot plugin cho Apache

sudo apt install python3-certbot-apache

Request SSL cho domain o.vhost.vn

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email youremail@domain.com -d o.vhost.vn

Tích hợp Collabora Online với Nextcloud

Truy cập admin hệ thống Nextcloud -> Apps search ứng dụng Nextcloud Office và nhấn Download and enable

Sau đó truy cập Admin hệ thống Nextcloud -> Settings -> Nextcloud Office -> chọn Use your own server và cung cấp đường dẫn tới hệ thống Collabora Online như hình và save

Tại phần Advanced Settings chọn Use Office Open XML (OOXML) instead of OpenDocument Format (ODF) by default for new files để các file mới tạo ra sẽ tương thích với bộ công cụ office của Microsoft.

Sau khi tạo xong thì bạn truy cập hệ thống quản lý file của Nextcloud đã thấy có 4 công cụ cho phép tạo file: Document, Spreadsheet, Presentation và Graphic như hình sau

Thử tạo 1 file Word xem sao nhé

Như vậy qua các bước này vHost đã hướng dẫn bạn cài đặt và tích hợp Collabora Online cho Nextcloud hoàn tất. Nếu bạn gặp khó khăn, hãy comment tại đây nhé.

5 thoughts on “Hướng dẫn tích hợp Collabora Online với Nextcloud”

    1. Chào anh,
      Cảm ơn anh đã đặt câu hỏi cho vHost.
      Sẽ không giới hạn về số lượng người dùng Collabora online anh nhé. Chỉ giới hạn về tài nguyên của Server thôi ạ.
      vHost thông tin đến anh.

  1. Cho mình hỏi chút là sau khi cài collabora thì có phải đưa ra pubic không Ad, vì mình đã public nextcloud ra ngoài rồi, mong muốn là collabora chỉ chạy ở local thôi, cám ơn Ad

  2. Cảm ơn bài hướng dẫn chi tiết, cho mình hỏi chút với: đến đoạn tích hợp Collabora vào Nextcloud, mình bị lỗi là Could not establish connection to the Collabora Online server. và bị một dấu chấm than màu vàng có nội dung là: You have not configured the allow-list for WOPI requests. Without this setting users may download restricted files via WOPI requests to the Nextcloud server. mình không thể thêm được collabora vào nextcloud được. Cách fix như nào vậy ạ

Leave a Comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Scroll to Top