Is Collabora Online overkill for me?

Hello,

I am trying to determine if Collabora Online is more than I need to do what I’m trying to do.

Currently, two people are working on a creative project together. We use Google Docs and want to get rid of it. We want our data solely under our control, local yet sharable between us..

We would like to setup some form of machine on our local network to act as a file repository which either of us could add/edit/update files in the repository. We anticipate needed spreadsheets, text, and images.

From what I have read, Collabora Online would check all these boxes. However, I wonder if it is more than we need. I have some technical skill but have never done something like this. So I also wonder if I am taking a bigger bite than I should be.

I would welcome guidance/advice/comments on the subject.

Thank you

hi @lochnar187 first welcome to the collabora online forum :slight_smile:

Great question and yes, Collabora Online is likely more than two people need, but it’s still a solid choice if you pair it with the right platform.

The simplest path: Nextcloud + Collabora (CODE)

Nextcloud is your own private Google Drive. Add Collabora Online (the free version is called CODE) and you get real-time collaborative editing of docs, spreadsheets, and presentations — just like Google Docs, but fully under your control.

Easiest setup — use Docker:

The fastest way to get running is Docker. One container for Nextcloud, one for Collabora CODE, and you’re done. Both of you access everything through a browser on your local network.

Key links:

Even simpler alternative:

If you don’t need simultaneous live editing, Syncthing syncs folders directly between your two computers with no server at all — 20 minutes to set up. You’d edit files locally with LibreOffice. If you later want the full Google Docs experience, graduate to Nextcloud + CODE.

Bottom line: You’re not in over your head. The Docker route for Nextcloud + Collabora CODE is a weekend project, well-documented, and well within reach for someone with some technical skill.

I hope this helps @lochnar187

Thanks
Darshan

1 Like

Hi, I have an old PC with a couple of cheap NVME (I’m not sure those still exist) which I use for a self-hosted Nextcloud with Collabora. I found it very convenient and relatively easy to install TrueNAS on the hardware, then install Nextcloud as a TrueNAS app, and finally Collabora using the “Collabora Online - Built-in CODE Server” app for Nextcloud.

You can also install Collabora as a TrueNAS app, then configure Nextcloud to talk to it via the Nextcloud Office app, but for only two users, I don’t think it will be worth it.

A couple of tips to keep everything as streamlined as possible:

Keep Nextcloud apps to the bare minimum to avoid any trouble when updating it. The only troubles I’ve had updating via the TrueNAS interface was with old unsupported apps.

You may want to configure the virtual network of TrueNAS in “bridge” mode rather than “routing” this will assign a unique distinct IP address to Nextcloud. The bridge acts like a virtual mini-switch, with several virtual interfaces behind it.

If you want to use a signed certificate (letsencrypt or commercial), it can become complicated, but it s really not necessary.

1 Like

I have a test install up and running on my local network! It’s just a proof of concept sandbox but it’s a big first step. Collabora and NextCloud are running in Docker containers.

There are other things I’d like to do, for example I haven’t found an example of enabling HTTPS with a self signed cert. All the stuff I’ve seen are enterprise level implementations with domains and auth certs (like something you’d get from Verisign).

Is there a simplified example of a local install using SSL with a self signed cert?

Hey @lochnar187

Congrats on getting that running Nextcloud + Collabora in Docker is a satisfying stack to see working together.

Yes, this is totally doable and simpler than most guides make it look. The core idea is: generate a self-signed cert, then put a reverse proxy (Nginx is the easiest) in front of your containers to terminate SSL. Here’s a walkthrough for a local/LAN setup.

Step 1: Generate the self-signed cert

From your Docker host, create a cert that covers your local hostname or IP:

mkdir -p ~/certs

openssl req -x509 -nodes -days 365 \
  -newkey rsa:2048 \
  -keyout ~/certs/selfsigned.key \
  -out ~/certs/selfsigned.crt \
  -subj "/CN=nextcloud.local" \
  -addext "subjectAltName=DNS:nextcloud.local,IP:192.168.1.100"

Replace 192.168.1.100 with your actual host IP. The subjectAltName is important — modern browsers reject certs without it. If you access it by IP only, you still want it listed there.

Step 2: Add an Nginx reverse proxy container

In your docker-compose.yml, add something like this alongside your existing Nextcloud and Collabora services:

  nginx-proxy:
    image: nginx:alpine
    ports:
      - "443:443"
    volumes:
      - ~/certs:/etc/nginx/certs:ro
      - ./nginx.conf:/etc/nginx/nginx.conf:ro
    depends_on:
      - nextcloud
      - collabora

Step 3: Create the Nginx config

Create nginx.conf next to your compose file:

events {}

http {
    upstream nextcloud {
        server nextcloud:80;  # matches your container name
    }

    upstream collabora {
        server collabora:9980;  # default Collabora port
    }

    server {
        listen 443 ssl;
        server_name nextcloud.local;

        ssl_certificate     /etc/nginx/certs/selfsigned.crt;
        ssl_certificate_key /etc/nginx/certs/selfsigned.key;

        client_max_body_size 10G;

        location / {
            proxy_pass http://nextcloud;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto https;
        }
    }

    server {
        listen 9980 ssl;
        server_name nextcloud.local;

        ssl_certificate     /etc/nginx/certs/selfsigned.crt;
        ssl_certificate_key /etc/nginx/certs/selfsigned.key;

        location / {
            proxy_pass http://collabora;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto https;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
        }
    }
}

The WebSocket headers (Upgrade/Connection) on the Collabora block are essential — Collabora uses WebSockets for the live document editing.

Step 4: Tell Nextcloud it’s behind HTTPS

In your Nextcloud config.php (or via environment variables), make sure these are set:

'overwriteprotocol' => 'https',
'trusted_domains' => ['nextcloud.local', '192.168.1.100'],
'trusted_proxies' => ['nginx-proxy'],

Step 5: Deal with the browser warning

Since it’s self-signed, browsers will complain. You have two options: just click through the warning each time, or (the nicer path) import selfsigned.crt into your OS/browser trust store. On Linux that’s typically copying it to /usr/local/share/ca-certificates/ and running update-ca-certificates. On macOS, add it to Keychain and mark it trusted. On Windows, import it into Trusted Root Certification Authorities.

Optional but handy: add 192.168.1.100 nextcloud.local to /etc/hosts on any machine that needs to reach it, so you can use the hostname instead of the IP.

The key thing that makes this simpler than the enterprise guides is: no Let’s Encrypt, no domain registrar, no ACME challenges. Just OpenSSL, one Nginx config, and a cert you trust manually. Let me know if you hit any snags getting it wired up.

Let me know if this still confussion with SSL setup

Thanks
Darshan

1 Like

Thank you for your help! That looks a lot simpler than what I’ve see so far. I’ll work on this over the weekend.