Reformat `{{ { ... }[engine] }}` dict-in-Jinja-expressions across
bot/bridge role defaults for consistent indentation (tabs -> spaces).
Also: fix a missing space in a Jinja `+` expression in matrix-static-files,
and fix indentation in the caddy2-in-container example.
The original PR also renamed `galaxy/<role>` role references to just
`<role>` in setup.yml and jitsi_jvb.yml; those were dropped here because
Ansible does not recurse into subdirectories of `roles/` by default and
no `roles_path` is configured in ansible.cfg, so the rename would break
role resolution.
Co-Authored-By: Slavi Pantaleev <slavi@devture.com>
Caddy reverse-proxy fronting the playbook's integrated Traefik reverse-proxy
This directory contains a sample config that shows you how to front the integrated Traefik reverse-proxy webserver with your own containerized Caddy reverse-proxy. If you have a server with a Caddy container already serving several applications and you want to install Matrix on it (with no changes to existing traffic routing), then this guide is for you.
Note: if you're running Caddy on the host itself (not in a container), refer to the caddy2 example instead.
Prerequisite configuration
To get started, first follow the front the integrated reverse-proxy webserver with another reverse-proxy instructions and update your playbook's configuration (inventory/host_vars/matrix.example.com/vars.yml).
Then, adjust your Caddy docker-compose.yaml file (if you're using docker-compose for running your Caddy container). See examples/reverse-proxies/caddy2-in-container/docker-compose.yaml.
Using the Caddyfile
You can either just use the Caddyfile directly or append its content to your own Caddyfile.
In both cases make sure to replace all the example.com domains with your own domain.
This example does not include additional services like Element Web, but you should be able copy the first block and replace the matrix. subdomain with the subdomain of the some other service (e.g. element.).