How to install Collabora built-in CODE server on Nextcloud snap

How to install Collabora built-in CODE server on Nextcloud snap

Collabora built-in CODE & Nextcloud Office configuration on Nextcloud snap

Collabora Online is a LibreOffice-based online office suite with collaborative editing, which supports all major documents, spreadsheet and presentation file formats and works together with all modern browsers. The Nextcloud Office integration app provides an interface for editing documents in Nextcloud with Collabora Online.

Collabora built-in CODE Server (Collabora Online Development Edition) and Nextcloud office are third party apps included in the default Nextcloud installation requiring individual configuration in Nextloud snap. It is perfect for testing, home use or small teams but not recommended for production environments. Collabora Built-in CODE Server together with Nextcloud Office enables editing Office documents within your Nextcloud instance.

IMPORTANT!

Nextcloud snap requirements
Ensure that your Nextcloud instance is encrypted with a valid certificate and that your instance is publicly available.

  • Nextcloud snap is an internet facing instance with automated (SSL) HTTPS encryption using Lets Encrypt without a reverse proxy.
  • Nextcloud snap is behind a reverse proxy which handles (SSL) HTTPS encryption and redirects only http to the Nextcloud snap.

Required apps from Nextcloud app store

The default Nextcloud snap installation will include Collabora built-in CODE Server and Nextcloud Office. These apps may be installed manually from the Nextcloud app store or via the OCC management console;

  • Install Nextcloud office app from Nextcloud app store
sudo nextcloud.occ app:enable richdocuments 
  • Install Collaora built-in CODE (richdocumentscode) app from Nextcloud app store
sudo nextcloud.occ app:enable richdocumentscode

Procedure

1. Install packages on host

Install packages on host:

sudo apt install fontconfig glibc-source

2. Set Hostname and FQDN

Set host in /etc/hosts on host, see Hosts & FQDN

Example for internet facing instance with automated (SSL):

127.0.0.1       localhost
127.0.1.1       <your.domain.xyz>   <hostname>

## The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

Example for instance behind reverse proxy with termination:

127.0.0.1       localhost
<your.reverse.proxy.ip>   <your.domain.xyz>   <hostname>

## The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

3. Set overwrite-cli-url in Config-php

Set overwrite.cli.url in config-php by adding the following line to your configuration:

  'overwrite.cli.url' => 'https://your.domain.xyz',

or issue command:

sudo nextcloud.occ config:system:set overwrite.cli.url --value="https://your.domain.xyz"

Be aware that the value https://your.domain.xyz above will be the only allowed domain for editing documents in Nextcloud office! Any other trusted domains will not be accepted by Collabora Built-in CODE. So you may need to instruct your users.

4. Set trusted proxy in Config-php

Set trusted proxy in config-php if Nextcloud snap is behind a reverse proxy.

  'trusted_proxies' => 
    array (
      0 => 'your.reverse.proxy.ip',
     ),

or issue command:

sudo nextcloud.occ config:system:set trusted_proxies 0 --value="your.reverse.proxy.ip" ;

CAUTION

Be aware that these values must be IPv4 address or IPv4 ranges in CIDR notation see reverse proxy documentation

5. Configure CODE

5a. Configure built-in CODE & Office for Nextcloud snap on AMD64:
These steps (in sequence) are required to reconfigure/reset and configure CODE & Nextcloud office on Nextcloud snap.

  1. disable CODE:
    sudo nextcloud.occ app:disable richdocumentscode
  2. disable Office:
    sudo nextcloud.occ app:disable richdocuments
  3. delete configs:
    sudo nextcloud.occ config:app:delete richdocuments public_wopi_url
  4. delete configs:
    sudo nextcloud.occ config:app:delete richdocuments wopi_url
  5. enable Office:
    sudo nextcloud.occ app:enable richdocuments
  6. enable CODE:
    sudo nextcloud.occ app:enable richdocumentscode

5b. Configure built-in CODE & Office for Nextcloud snap on ARM64:
These steps (in sequence) are required to reconfigure/reset and configure CODE & Nextcloud office on Nextcloud snap.

  1. disable CODE:
    sudo nextcloud.occ app:disable richdocumentscode_arm64
  2. disable Office:
    sudo nextcloud.occ app:disable richdocuments
  3. delete configs:
    sudo nextcloud.occ config:app:delete richdocuments public_wopi_url
  4. delete configs:
    sudo nextcloud.occ config:app:delete richdocuments wopi_url
  5. enable Office:
    sudo nextcloud.occ app:enable richdocuments
  6. enable CODE:
    sudo nextcloud.occ app:enable richdocumentscode_arm64

You should get a green check if you’ve followed the above sequence for your device.

grafik


Troubleshooting built-in CODE on Nextcloud snap

Your documents are not loading?

Your image title

  • Loading built-in CODE after fresh install, app upgrade or after server restart may take a while, so be patient. See here
    • some folks suggest installing libfuse2 on host sudo apt install libfuse2
  • For network connection issues, double check steps 1 to 4
  • To reset built-in CODE configuration, repeat steps 5a or 5b 1-6 in sequence depending on your device
  • For ARM64 devices: There is an actual upstream issue with ARM64 devices since v23.5.5.
    Keep tracking and help with providing your system and setup information here

TIP

See also:


1 Like