Pull Docker Image
docker pull collabora/code
Start a new container
⚠️ Bind Both TCP And UDP Incase Reverse Proxy Enable HTTP/3
docker run -t -d --name collabora \ -p 127.0.0.1:9980:9980 \ -p 127.0.0.1:9980:9980/udp \ -e "username=admin" \ -e "password=password" \ -e "aliasgroup1=https://inclouds.top:443" \ -e "aliasgroup2=https://nocdn.inclouds.top:443" \ -e "aliasgroup3=https://cloud.inclouds.top:443" \ -e "server_name=office.inclouds.top" \ -e "extra_params=--o:ssl.enable=false --o:ssl.termination=true" \ --restart always \ collabora/code
aliasgroup1
Website That Use Collabora Online Servicealiasgroup2
Different Domain From aliasgroup1server_name
Domain Of Reverse proxyextra_params=--o:ssl.enable=false --o:ssl.termination=true
SSL Termination--restart always
Auto Restarts After Crashes
Nginx Reverse proxy
⚠️ An Error Will Occurred With Collabora SSL Termination Function,
If Nginx Enable HTTP/3 And Docker Dosen’t Bind With UDP Port.
server { listen 443 ssl; server_name collaboraonline.example.com; ssl_certificate /path/to/certificate; ssl_certificate_key /path/to/key; # static files location ^~ /browser { proxy_pass http://127.0.0.1:9980; proxy_set_header Host $http_host; } # WOPI discovery URL location ^~ /hosting/discovery { proxy_pass http://127.0.0.1:9980; proxy_set_header Host $http_host; } # Capabilities location ^~ /hosting/capabilities { proxy_pass http://127.0.0.1:9980; proxy_set_header Host $http_host; } # main websocket location ~ ^/cool/(.*)/ws$ { proxy_pass http://127.0.0.1:9980; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_set_header Host $http_host; proxy_read_timeout 36000s; } # download, presentation and image upload location ~ ^/(c|l)ool { proxy_pass http://127.0.0.1:9980; proxy_set_header Host $http_host; } # Admin Console websocket location ^~ /cool/adminws { proxy_pass http://127.0.0.1:9980; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_set_header Host $http_host; proxy_read_timeout 36000s; } }
Collabora Admin Console
https://office.inclouds.top/browser/dist/admin/admin.html
ERROR
Exception while processing incoming request
Happens When Nginx Enable HTTP/3 And Docker Don’t Bind With UDP Port.
Happens Also When Cloudflare CDN/Proxy Enable HTTP/3.
HTTP/3 Blocked In Some Aera/Country
Better Just Use HTTP/2