EGroupware allows to edit office files online via Collabora Online Office directly within EGroupware Filemanager app.
In a default package installation just add the
egroupware-collabora-key package to your system.
It installs Collabora Online Office in it's supported version via a Docker container.
After the package installation you have to log into EGroupware and go to Administration >> Application >> Collabora >> Site configuration and save the configuration page once, in order for it to write the correct Collabora configuration to
/var/lib/egroupware/default/loolwsd/loolwsd.xml. Collabora container should restart automatically which can take 1-2 minutes!
It shows an Unsupported, the support-key is missing watermark, unless you buy a support-key from Collabora through EGroupware GmbH: https://www.egroupware.org/collabora-online/
You can also use Collaboras CODE container for development and testing purpose, by using
collabora/code:latestas image name in your /etc/egroupware-collabora-key/docker-compose.yml. There are some restrictions in the number of concurrent users with CODE!
Try loading the address https://your.domain/hosting/discovery (replacing
your.domain with your actual domain name). If it loads in your browser and shows a xml file, you have a problem with EGroupware server loading the file via it's (external) address from the Collabora container. This is most like a problem of your firewall not allowing your server to access itself via it's external address aka NAT reflection.
There are two ways to solve this:
1.) in Docker by telling it to use the internal IP address when accessing the external URL
#extra_hosts: #- "my.host.name:ip-address"
modify both to:
extra_hosts: - "<your-domain>:172.17.0.1"
This writes your domain-name with the default IP of the docker0 bridge (172.17.0.1) in the /etc/hosts file of both container. Please verify that you actually use the Default IP (Docker Desktop for MacOS does not!). You can also use whatever internal IP your server uses.
Then restart both Docker container by running
cd /etc/egroupware-docker docker-compose up -d cd /etc/egroupware-collabora-key docker-compose up -d
2.) with the correct configuration on your firewall allowing your server to access itself via it's external address
Out of scope of this article.