Installing Collabora Online for eLabNext on premises
Use this article to prepare a customer-hosted Collabora Online server and connect it to your on-premises eLabNext environment. The goal is to open an Office document in the browser, save a change and confirm that the updated file is available in the ELN.
This procedure is for Linux administrators using the SciSure deployment package. It covers a single server with HTTPS handled by Collabora. If your organisation uses a reverse proxy, an internal certificate authority or a different port, also review Alternative configurations before installation.
On this page
Prepare
Reference and support
Install and connect
Before you begin
Complete this preparation before Step 1. If your setup needs a different port, an internal certificate authority, a reverse proxy or PFX/P12 conversion, review the linked alternative configuration before applying the relevant step.
- Register your interest and arrange your licence. Email support@elabnext.com to register interest in Collabora Online and request licence pricing. A Collabora Online licence through SciSure and a new customer-hosted server or virtual machine are required for this option. Agree the licence arrangements before installation.
- Confirm application readiness. Coordinate installation of the 2026 Q4 update and add-on v2.0.0 with SciSure. The proposed add-on name is Microsoft Document Online. Its compatibility with Office Online Server allows advance preparation; installing it does not switch the editing service automatically.
- Obtain the production deployment package. Contact support@elabnext.com for the supported docker-compose.yml and .env.example files, the approved production image and version, any registry-access or licence-activation instructions, and the container identity needed for certificate access.
Use the SciSure-approved production build. Collabora Online Development Edition, commonly called CODE, is intended for development and evaluation. Your production deployment must use the image and version supplied with your SciSure package.
Server requirements
Scroll horizontally to see all table columns.
| Requirement | What to prepare |
|---|---|
| Linux server | A new Ubuntu 24.04 LTS server or virtual machine with sudo access. The reference baseline is 2 CPU cores, 4 GB RAM and 5 GB free disk space. Confirm capacity with SciSure for your expected use and allow room for image updates and logs. |
| DNS | A name such as collabora.example.com that resolves correctly from user computers and the ELN web server. The Collabora server must also resolve the ELN hostname. |
| TLS certificate | A valid certificate for the Collabora hostname, its private key and the required certificate chain in PEM format. The certificate must be trusted by all connecting clients. |
| ELN address | The exact HTTPS origin used by your ELN, for example https://elab.example.com. Record any additional addresses for review with SciSure. |
| Network and support | The connections listed under Required connections, an HTTPS port reachable by users and the ELN server, and the agreed remote support access for SciSure. |
| Deployment files | The production docker-compose.yml and .env.example supplied by SciSure, plus the approved image/version and any access or activation instructions. |
Your IT team owns the host, DNS, certificates, firewall rules, patching and ongoing operation. SciSure confirms the supported deployment package, guides the integration and coordinates testing. Agree any installation or maintenance assistance and the required remote access before scheduling the work.
Required connections
The ELN remains the source for document storage. The user browser connects to both eLabNext and Collabora. Collabora retrieves and saves documents through the ELN using WOPI, the protocol used for the editing connection. Limit the permitted WOPI hosts to the ELN addresses agreed with SciSure.
Scroll horizontally to see all table columns.
| From | To | Connection and purpose |
|---|---|---|
| User browsers | ELN and Collabora | HTTPS on TCP 443. Browser connections to Collabora must support secure WebSockets. |
| ELN web server | Collabora | HTTPS on TCP 443 for discovery and integration checks. |
| Collabora server | ELN web server | HTTPS on TCP 443 for document retrieval and saving. |
| Collabora host | Approved repositories and registry | Outbound access for installation and subsequent updates, typically HTTPS. Allow any additional ports required by your package repositories. |
Standard installation: Follow Steps 1 to 10 in order. The main procedure uses a new Linux server and direct HTTPS on port 443. For a different design, use the relevant alternative configuration and return to the numbered step.
Install and connect Collabora
Run terminal commands on the new Collabora server unless a step names another location. Replace example hostnames and /path/to values with your own. Complete the check at the end of each step before continuing.
Step 1 Install Docker and Compose
On the new Collabora server
Run the following on the new Collabora server. These commands use the Ubuntu packages for the reference Ubuntu 24.04 LTS installation. If your organisation already manages Docker centrally, use its approved installation method and ensure Docker Compose v2 is available.
sudo apt update
sudo apt install -y docker.io docker-compose-v2
sudo systemctl enable --now docker
sudo docker compose version
The last command should report a Docker Compose version. If the package is unavailable through your configured repositories, have your Linux administrator resolve the repository configuration before continuing.
Check before continuing
Confirm that Docker starts without errors and Docker Compose reports version 2.
Step 2 Create the installation folder
On the Collabora server
sudo mkdir -p /opt/collabora/certs
sudo chmod 755 /opt/collabora
cd /opt/collabora
Keep deployment configuration in this folder. Run the remaining Compose commands from /opt/collabora so that they use the intended configuration.
Check before continuing
Confirm that the installation and certificate folders exist and that you can work from /opt/collabora.
Step 3 Copy the SciSure deployment files
On the Collabora server
Copy the two supplied production files into the installation folder. Replace /path/to with the folder where you downloaded them.
sudo cp /path/to/docker-compose.yml /opt/collabora/docker-compose.yml
sudo install -m 600 /path/to/.env.example /opt/collabora/.env
Keep the supplied Compose file unchanged for the standard configuration. Follow the package instructions for registry authentication and licence activation if these are required. Keep credentials in your approved secrets process.
Check before continuing
Confirm that both supplied files are in the installation folder. The .env file must have restricted permissions, and any required registry access and licence arrangements must be ready.
Step 4 Configure your environment
On the Collabora server
sudo nano /opt/collabora/.env
The reference package uses the settings below. Keep the production image and version specified by SciSure. Replace the example hostnames and administrator credentials with your own values.
Scroll horizontally to see all table columns.
| Setting | Value or action |
|---|---|
| COLLABORA_VERSION | Use the pinned version approved by SciSure for the supplied production image. |
| COLLABORA_SERVER_NAME | collabora.example.com, without https:// or a path. Include the port if a non-default port is used. |
| COLLABORA_PORT | 443 for the standard HTTPS installation. |
| ELAB_URL_PATTERN | Use the WOPI host value supplied or validated by SciSure for your exact ELN origin, for example https://elab.example.com:443. The required escaping and host or alias syntax depend on the production package. |
| ADMIN_USER | A dedicated administrator name, for example collabora-admin. |
| ADMIN_PASSWORD | A long, unique random password. For the reference .env format, avoid dollar signs, double quotes, single quotes and backslashes. |
| DICTIONARIES | Keep the required languages. The reference set is en_US en_GB de_DE nl_NL. |
| EXTRA_PARAMS | Leave empty for the standard installation unless SciSure instructs otherwise. |
The WOPI allow-list format must match the production package. Permit only the agreed ELN hosts. If users access the ELN through several addresses, ask SciSure to validate each host or alias before adding it.
If your setup differs: Review a different host port, a reverse proxy or additional ELN addresses before finalising the configuration.
Check before continuing
Save the .env file with the correct hostnames, port, approved version and administrator credentials. Confirm that the WOPI entries contain only the ELN hosts agreed with SciSure.
Step 5 Add the TLS certificate
On the Collabora server and systems that must trust its certificate
Place these PEM files in /opt/collabora/certs. Use the exact filenames expected by the deployment package.
Scroll horizontally to see all table columns.
| Filename | Contents |
|---|---|
| cert.pem | The server certificate for the Collabora hostname. |
| key.pem | The matching private key, without a passphrase so the service can start unattended. |
| ca-chain.cert.pem | The CA certificate chain required by your certificate provider and the deployment package. |
Protect the certificate and verify trust
Set ownership and permissions so that the Collabora container process can read the certificate files. Restrict the private key to root and the required runtime identity. The appropriate owner or group depends on the production image. Use the identity and permissions supplied with the package; do not make key.pem readable by all local users.
A common approach is read access through a dedicated group with mode 640 for the private key, but only after assigning the correct runtime group. The certificate directory must also allow that identity to traverse it. If the service cannot read a file, correct ownership or access rather than granting broad permissions.
The certificate must match the hostname, be within its validity period and present a complete trusted chain. If you use an internal certificate authority, install its trust chain on the user computers and the ELN server. Collabora must separately trust the certificate used by the ELN server.
If your certificate is supplied as a PFX or P12 file, use the conversion instructions under Alternative configurations. Do not send the private key or certificate-export password to support in an ordinary message.
If needed: See PFX/P12 conversion or internal CA trust for the ELN. If a proxy handles HTTPS, use the reverse-proxy configuration. Return here to check certificate access and trust.
Check before continuing
Confirm that the PEM filenames, certificate hostname and trust chain are correct. The required runtime identity must be able to read the files, while the private key remains protected from other local users.
Step 6 Configure the firewall
On the Collabora host and the relevant network firewalls
Allow the browser, ELN and Collabora connections listed in Required connections. For a host that uses UFW, the reference rule is:
sudo ufw allow 443/tcp
Apply your organisation’s source restrictions at the appropriate network firewall as well. Docker-published ports can bypass ordinary UFW filtering, so validate the actual exposure and use the Docker-aware controls required by your firewall design. Confirm that no other service already binds the chosen host port.
For a reverse proxy: Apply the proxy-specific exposure rules before starting the service.
Check before continuing
Confirm that the chosen host port is available and the firewall rules cover the required connections, including Docker-published ports. Live connectivity is checked after the service starts.
Step 7 Start Collabora
On the Collabora server
cd /opt/collabora
sudo docker compose config --quiet
sudo docker compose pull
sudo docker compose up -d
sudo docker compose ps
sudo docker compose logs -f
Resolve configuration or image access errors before proceeding. Confirm that the service is running and the logs show that it is ready to accept connections. The reference container listens internally on port 9980, even when users connect to host port 443.
Press Ctrl+C to stop following the logs. This does not stop Collabora. The supplied service configuration should include the agreed restart policy so that it recovers after a host reboot.
Check before continuing
Confirm that Compose accepts the configuration, the approved image downloads and the service is running. The logs should show readiness without repeated startup failures.
Step 8 Check browser and server connectivity
From a user computer, the ELN web server and the running Collabora container
Open the discovery address below from a normal user computer. Substitute your Collabora hostname. It should return XML without a certificate warning.
https://collabora.example.com/hosting/discovery
Also check that the ELN web server can reach the discovery endpoint. Confirm that the running Collabora container can resolve and reach the ELN address and trust its certificate; a successful connection from the host alone does not confirm container connectivity. Resolve DNS, TLS or network failures before enabling the integration.
Check before continuing
Confirm that discovery returns XML without certificate warnings from a user computer and the ELN server. The running Collabora container must also resolve and reach the ELN and trust its certificate.
Step 9 Connect Collabora to eLabNext
With SciSure Support and your IT administrator
Email your Collabora base URL, for example https://collabora.example.com, to support@elabnext.com together with your organisation, ELN URL and technical contact. Share administrator credentials only through the agreed secure channel if they are needed.
SciSure will coordinate the ELN configuration and the switch to the Collabora editing service. Confirm that the Q4 release, add-on version and licence requirements are satisfied first. Do not retire Office Online Server until the replacement workflow has been validated and the change is agreed.
Optional administration console
Where the production package enables the Collabora administration console, open the following address from an authorised administrator computer and sign in with the configured credentials. Restrict console access to administrators through the approved network or proxy controls.
https://collabora.example.com/browser/dist/admin/admin.html
Check before continuing
Wait for SciSure Support to confirm that the application version, add-on and licence are ready and that the ELN connection is configured for testing. Sending the request starts this handover.
Step 10 Validate the complete workflow
In eLabNext, using normal user accounts
Use representative test files and normal user accounts. A working discovery page confirms connectivity, but the following checks confirm that editing and saving work together.
- Open a Word document, an Excel workbook and a PowerPoint presentation from the ELN. Check that the editor loads without errors.
- Make a recognisable test change, save it, close the editor and reopen the file from the ELN. Verify that the change has been retained.
- Download the updated file and check it in the appropriate desktop application. Include complex formatting and any advanced features your team relies on.
- Check the Office previews and history functions used by your team. Confirm that authorised users have the expected access.
- Test concurrent editing if your team uses it and confirm that a normal editing session remains connected through the proxy and firewall.
- Record the outcome with SciSure and agree the production switch. Tell users when the interface changes and how to get help.
Completion check
Confirm that representative files open, save and reopen with the changes retained. Check required features and user access, share the results with SciSure and agree the production change.
Complete the transition
Keep the old service available only as required by the agreed change and recovery plan. After successful validation, agree when to retire the Office Online Server connection and when its server can be decommissioned. Confirm that it has no other dependencies before removing it.
Share the test results
Email support@elabnext.com with your organisation, ELN URL, Collabora URL, approved image/version, deployment status, technical contact and preferred transition window. Include the results of the open, save and reopen tests. If a check fails, include its timestamp and time zone, a description of the symptom and relevant redacted logs.
Alternative configurations
Use these options only where they fit your network design and the SciSure production package. Agree changes with SciSure before the production switch.
Use only the options that apply to your environment. Each option links back to the step where it is needed.
- Use a different host port
- Trust an internal certificate authority for the ELN
- Terminate HTTPS at a reverse proxy
- Convert a PFX or P12 certificate
- Allow more than one ELN address
Use a different host port
Use with Steps 4 and 6
If host port 443 is occupied, the reference package can expose HTTPS on another port, for example 9980. Update both settings below, permit that port through the relevant firewalls, and include it in every Collabora URL supplied to users or SciSure.
COLLABORA_PORT=9980
COLLABORA_SERVER_NAME=collabora.example.com:9980
The discovery URL then becomes https://collabora.example.com:9980/hosting/discovery. Confirm that browser and ELN access are both available on the chosen port.
Trust an internal certificate authority for the ELN
Use with Steps 5 and 8
If the ELN web server uses an internal CA, Collabora must trust that CA to retrieve and save documents. For packages using the reference configuration, place the approved CA bundle in /opt/collabora/certs/wopi-ca.pem and add the following read-only mount under the Collabora service volumes:
- ./certs/wopi-ca.pem:/etc/coolwsd/wopi-ca.pem:ro
Add the CA path option to EXTRA_PARAMS, preserving any other required options without duplication:
EXTRA_PARAMS=--o:storage.ssl.ca_file_path=/etc/coolwsd/wopi-ca.pem
For an existing deployment, recreate the service with
sudo docker compose up -d and repeat the save/reopen
test. During initial installation, return to
Step 5, start the service in
Step 7 and complete the workflow test
in Step 10. Keep certificate verification
enabled.
Terminate HTTPS at a reverse proxy
Use with Steps 4, 5 and 6
The public endpoint must remain HTTPS with a trusted certificate. The proxy must forward the Collabora routes, support WebSocket upgrades and allow the required long-lived connections. The reference idle timeout is 3600 seconds.
For a proxy on the same host, bind the backend to loopback and forward the proxy to http://127.0.0.1:9980. For a proxy on another host, use a restricted private interface and allow only the proxy to reach it. A loopback address cannot be reached from a different host.
COLLABORA_PORT=127.0.0.1:9980
Keep COLLABORA_SERVER_NAME set to the public hostname. Adjust the Compose extra_params so that the effective TLS settings are ssl.enable=false and ssl.termination=true. Replace the direct-TLS values rather than appending contradictory true and false flags. Retain any other required production settings. Coordinate mounts and permissions with the chosen TLS design.
Use Collabora’s proxy-specific documentation and have SciSure review the resulting configuration. During initial installation, return to the numbered steps. Validate discovery in Step 8, then check editing, saving and session stability through the public URL in Step 10. For an existing deployment, repeat those checks after applying the configuration.
Convert a PFX or P12 certificate
Use with Step 5
If your certificate provider supplied a PFX or P12 bundle, use OpenSSL to extract the required PEM files. Run the commands in the installation folder and replace /path/to/certificate.pfx with the real path. OpenSSL will prompt for the bundle password.
cd /opt/collabora
sudo openssl pkcs12 -in /path/to/certificate.pfx \
-clcerts -nokeys -out certs/cert.pem
sudo sh -c 'umask 077; openssl pkcs12 \
-in /path/to/certificate.pfx -nocerts -noenc \
-out /opt/collabora/certs/key.pem'
sudo openssl pkcs12 -in /path/to/certificate.pfx \
-cacerts -nokeys -out certs/ca-chain.cert.pem
The -noenc option creates a private key without a passphrase. The restrictive umask protects a newly created key file; do not extract over an existing file with broader permissions. Then assign the ownership and access needed by the verified runtime identity. Check that the extracted certificate matches the hostname and key. If the bundle does not contain the complete CA chain, obtain the missing certificates from your certificate provider.
Allow more than one ELN address
Use with Step 4
Give SciSure the exact ELN origins and explain which are separate hosts and which are aliases of the same installation. Use the aliasgroup syntax required by the production package. Do not add wildcard hosts or copy regular expressions between configuration formats without validating their interpretation.
Operate and maintain the service
Plan restarts and updates during an agreed maintenance window. Ask users to save their work and close the editor first, because active sessions may disconnect.
Scroll horizontally to see all table columns.
| Task | Command or action |
|---|---|
| Check status | sudo docker compose ps |
| View recent logs | sudo docker compose logs --since 1h |
| Restart the service | sudo docker compose restart |
| Apply a .env or Compose change | sudo docker compose up -d |
Run these commands from /opt/collabora. A restart alone does not apply changed environment variables; use up -d to let Compose recreate the service when the configuration changes.
Install a supported update
Confirm the new version with SciSure. Retain a protected copy of the previous configuration, then update the approved version or image setting as instructed and run:
cd /opt/collabora
sudo docker compose pull
sudo docker compose up -d
Repeat the discovery and save/reopen checks after the update. If recovery is needed, use the previous approved image and configuration according to the agreed rollback plan. Do not assume that every version downgrade is compatible.
Renew certificates
Replace the certificate, key and chain, preserve their required ownership and permissions, and run sudo docker compose restart from /opt/collabora. Check that the HTTPS endpoint presents the renewed certificate, then repeat the save/reopen test. If certificate paths or mounts also changed, apply the configuration with sudo docker compose up -d. Monitor expiry so that renewals are completed in time.
Protect configuration and records
Keep recoverable copies of docker-compose.yml, the protected .env file, certificate material, licence information and any proxy configuration in your approved backup and secrets processes. Document storage and its backups remain part of the ELN environment. Collabora can process temporary working data, so follow the production package’s storage and retention guidance.
Monitor host capacity, image storage, service health and logs. Network access may be needed again for updates and any licence checks required by the supplied production package. A one-time image download is not a complete maintenance plan.
Troubleshoot common problems
Scroll horizontally to see all table columns.
| Symptom | Check and action |
|---|---|
| Editor is blank or reports a certificate error | Check the Collabora hostname, certificate expiry, full chain and trust on the user computer. Test the discovery URL from that computer. |
| Unauthorised WOPI host in logs | Compare the configured allow-list with the actual ELN origin. Check scheme, hostname, port, escaping and aliases against the production package. |
| Container repeatedly restarts | Read the service logs. Check configuration syntax, image access, certificate filenames and whether the container identity can read the key. |
| Editor disconnects during use | Check proxy and firewall timeouts and WebSocket support. Validate the connection through the same route as the affected user. |
| ELN cannot reach Collabora | Test DNS, routing, TLS trust and the selected port from the ELN web server. |
| Files open but changes do not save | Test Collabora-to-ELN connectivity, the ELN certificate trust and WOPI authorisation. Inspect logs around a failed save. |
| Port is already in use | Check the listener on the host. Use an agreed alternative port or reverse proxy configuration. |
If the problem continues, contact SciSure Support with the details below.
Contact SciSure Support
For help, contact support@elabnext.com and include the problem time and time zone, the affected workflow, the image/version and relevant log lines. Redact passwords, access tokens, private keys and document content before sharing. Ensure the remote access agreed with SciSure is working.
For the production handover, include the environment details and test results listed under Step 10.