I’m trying to integrate Collabora Online with my Seafile Pro (v12) server, both running as Docker containers on the same host, behind Traefik. I followed the official documentation but I can’t get online editing to work. When I click on a .docx file, I get “Online view is not applicable to this file format”.
Here is my Collabora service in docker-compose:
collabora:
image: ${COLLABORA_IMAGE:-collabora/code:24.04.5.1.1}
container_name: ${APP_NAME}-collabora
environment:
- domain=${SEAFILE_SERVER_HOSTNAME:?Variable is not set or empty}
- username=${COLLABORA_USERNAME:?Variable is not set or empty}
- password=${COLLABORA_PASSWORD:?Variable is not set or empty}
- DONT_GEN_SSL_CERT=true
- extra_params=--o:admin_console.enable=${COLLABORA_ENABLE_ADMIN_CONSOLE:-true}
--o:ssl.enable=false
--o:ssl.termination=true
--o:remote_font_config.url=${COLLABORA_REMOTE_FONT:-}
--o:logging.file[@enable]=${COLLABORA_ENABLE_FILE_LOGGING:-false}
--o:logging.file.property[0]=/opt/cool/logs/coolwsd.log
volumes:
- "${COLLABORA_PATH:-/opt/collabora}/logs:/opt/cool/logs/" # chmod 777 needed
labels:
- "traefik.enable=true"
- "traefik.http.routers.${SUBDOMAIN_NAME}-collabora.rule=Host(`${SEAFILE_SERVER_HOSTNAME}`) && PathPrefix(`/hosting/discovery`, `/lool`, `/loleaflet`, `/browser`, `/cool`)"
- "traefik.http.routers.${SUBDOMAIN_NAME}-collabora.entrypoints=websecure"
- "traefik.http.routers.${SUBDOMAIN_NAME}-collabora.tls=true"
- "traefik.http.services.${SUBDOMAIN_NAME}-collabora.loadbalancer.server.port=9980"
- "traefik.http.middlewares.${SUBDOMAIN_NAME}-collabora-stripprefix.stripprefix.prefixes=/hosting/discovery,/lool,/loleaflet,/browser"
networks:
- seafile-net
- traefik-net
cap_add:
- MKNOD
depends_on:
- seafile
And here is my seahub_settings.py
:
OFFICE_SERVER_TYPE = 'CollaboraOffice'
ENABLE_OFFICE_WEB_APP = True
OFFICE_WEB_APP_BASE_URL = 'https://seafile.company.com/hosting/discovery'
WOPI_ACCESS_TOKEN_EXPIRATION = 1800
OFFICE_WEB_APP_FILE_EXTENSION = ('odp', 'ods', 'odt', 'xls', 'xlsb', 'xlsm', 'xlsx', 'ppsx', 'ppt', 'pptm', 'pptx', 'doc', 'docm', 'docx')
ENABLE_OFFICE_WEB_APP_EDIT = True
OFFICE_WEB_APP_EDIT_FILE_EXTENSION = ('odp', 'ods', 'odt', 'xls', 'xlsb', 'xlsm', 'xlsx', 'ppsx', 'ppt', 'pptm', 'pptx', 'doc', 'docm', 'docx')
- I can access
https://seafile.exemple.com/hosting/discovery
but the page is : Sorry, but the requested page could not be found. - Seafile and Collabora are on the same Docker host, and both are on the
seafile-net
andtraefik-net
networks. - Traefik handles HTTPS termination.
- HTTPS is enable in my .env
- http://collabora:9980/hosting/discovery or *http://container_name:9980/hosting/discovery don’t work : collabora ’s server IP address could not be found. I can ping container_name from the Seafile container.
- https://seafile.company.com/hosting/discovery don’t work : Online view is not applicable to this file format
What am I missing?
- Are my docker-compose and
seahub_settings.py
correct? - Is there something else I should check in Traefik or Collabora configuration?
- Any advice on troubleshooting this integration?