Files
computer-playbook/roles/web-svc-collabora
Kevin Veen-Birkenbach 231fd567b3 feat(frontend): rename inj roles to sys-front-*, add sys-svc-cdn, cache-busting lookup
Introduce sys-svc-cdn (cdn_paths/cdn_urls/cdn_dirs) and ensure CDN directories + latest symlink.

Rename sys-srv-web-inj-* → sys-front-inj-*; update includes/templates; serve shared/per-app CSS & JS via CDN.

Add lookup_plugins/local_mtime_qs.py for mtime-based cache busting; split CSS into default.css/bootstrap.css + optional per-app style.css.

CSP: use style-src-elem; drop unsafe-inline for styles. Services: fix SYS_SERVICE_ALL_ENABLED bool and controlled flush.

BREAKING CHANGE: role names changed; replace includes and references accordingly.

Conversation: https://chatgpt.com/share/68b55494-9ec4-800f-b559-44707029141d
2025-09-01 10:10:23 +02:00
..
2025-08-20 01:00:20 +02:00
2025-08-20 01:00:20 +02:00

Docker Collabora (DRAFT)

Description

This Ansible role deploys Collabora Online (CODE) in Docker to enable real-time, in-browser document editing for Nextcloud. It automates the setup of the Collabora CODE container, Nginx reverse proxy configuration, network isolation via Docker networks, and environment variable management.

Overview

  • Dockerized Collabora CODE: Uses the official collabora/code image.
  • Nginx Reverse Proxy: Configures a public-facing proxy with TLS termination and WebSocket support for /cool/ paths.
  • Docker Network Management: Creates an isolated /28 subnet for Collabora and connects containers securely.
  • Environment Configuration: Generates a .env file with domain, credentials, and extra parameters for Collabora's WOPI server.

Features

  • Automatic creation of a dedicated Docker network for Collabora.
  • Proxy configuration template for Nginx with long timeouts and WebSocket upgrades.
  • Customizable domain names and ports via Ansible variables.
  • Support for SSL termination at the proxy level.
  • Integration hooks to restart Nginx and recreate Docker Compose stacks on changes.

Documentation

See the roles README.md, task files, and Jinja2 templates in the roles/web-svc-collabora directory for usage examples and variable definitions.

Further Resources