Files
computer-playbook/roles/web-svc-collabora
Kevin Veen-Birkenbach 5e616d3962 web: general domain cleanup (canonical/aliases normalization)
- Normalize domain blocks across apps:
  - Add explicit 'aliases: []' everywhere (no implicit aliases)
  - Standardize canonical subdomains for consistency:
    * Bluesky: web/api under *.bluesky.<PRIMARY_DOMAIN>
    * EspoCRM: espo.crm.<PRIMARY_DOMAIN>
    * Gitea:   tea.git.<PRIMARY_DOMAIN>
    * GitLab:  lab.git.<PRIMARY_DOMAIN>
    * Joomla:  joomla.cms.<PRIMARY_DOMAIN>
    * Magento: magento.shop.<PRIMARY_DOMAIN>
    * OpenProject: open.project.<PRIMARY_DOMAIN>
    * Pretix:  ticket.shop.<PRIMARY_DOMAIN>
    * Taiga:   kanban.project.<PRIMARY_DOMAIN>
  - Remove legacy/duplicate aliases and use empty list instead
  - Fix 'alias' -> 'aliases' where applicable

Context: preparing for AUTO_BUILD_ALIASES=False and deterministic redirect mapping.

Ref: conversation https://chatgpt.com/share/68cd512c-c878-800f-bdf2-81737adf7e0e
2025-09-19 14:51:56 +02:00
..
2025-08-20 01:00:20 +02:00
2025-09-19 11:22:51 +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