Move matrix-bridge-mautrix-twitter to its own container network and add native Traefik support

This commit is contained in:
Slavi Pantaleev
2024-01-07 17:54:46 +02:00
parent f9b4ae8241
commit 8b28f8e122
8 changed files with 135 additions and 53 deletions

View File

@ -32,11 +32,49 @@ matrix_mautrix_twitter_bridge_permissions: |
| combine({matrix_admin: 'admin'} if matrix_admin else {})
}}
matrix_mautrix_twitter_container_network: ""
matrix_mautrix_twitter_container_additional_networks: "{{ matrix_mautrix_twitter_container_additional_networks_auto + matrix_mautrix_twitter_container_additional_networks_custom }}"
matrix_mautrix_twitter_container_additional_networks_auto: []
matrix_mautrix_twitter_container_additional_networks_custom: []
# matrix_mautrix_twitter_container_labels_traefik_enabled controls whether labels to assist a Traefik reverse-proxy will be attached to the container.
# See `../templates/labels.j2` for details.
#
# To inject your own other container labels, see `matrix_mautrix_twitter_container_labels_additional_labels`.
matrix_mautrix_twitter_container_labels_traefik_enabled: true
matrix_mautrix_twitter_container_labels_traefik_docker_network: "{{ matrix_mautrix_twitter_container_network }}"
matrix_mautrix_twitter_container_labels_traefik_entrypoints: web-secure
matrix_mautrix_twitter_container_labels_traefik_tls_certResolver: default # noqa var-naming
# Controls whether labels will be added that expose mautrix-instagram's metrics
matrix_mautrix_twitter_container_labels_metrics_enabled: "{{ matrix_mautrix_twitter_metrics_enabled and matrix_mautrix_twitter_metrics_proxying_enabled }}"
matrix_mautrix_twitter_container_labels_metrics_traefik_rule: "Host(`{{ matrix_mautrix_twitter_metrics_proxying_hostname }}`) && PathPrefix(`{{ matrix_mautrix_twitter_metrics_proxying_path_prefix }}`)"
matrix_mautrix_twitter_container_labels_metrics_traefik_priority: 0
matrix_mautrix_twitter_container_labels_metrics_traefik_entrypoints: "{{ matrix_mautrix_twitter_container_labels_traefik_entrypoints }}"
matrix_mautrix_twitter_container_labels_metrics_traefik_tls: "{{ matrix_mautrix_twitter_container_labels_metrics_traefik_entrypoints != 'web' }}"
matrix_mautrix_twitter_container_labels_metrics_traefik_tls_certResolver: "{{ matrix_mautrix_twitter_container_labels_traefik_tls_certResolver }}" # noqa var-naming
matrix_mautrix_twitter_container_labels_metrics_middleware_basic_auth_enabled: false
# See: https://doc.traefik.io/traefik/middlewares/http/basicauth/#users
matrix_mautrix_twitter_container_labels_metrics_middleware_basic_auth_users: ''
# matrix_mautrix_twitter_container_labels_additional_labels contains a multiline string with additional labels to add to the container label file.
# See `../templates/labels.j2` for details.
#
# Example:
# matrix_mautrix_twitter_container_labels_additional_labels: |
# my.label=1
# another.label="here"
matrix_mautrix_twitter_container_labels_additional_labels: ''
# A list of extra arguments to pass to the container
matrix_mautrix_twitter_container_extra_arguments: []
# List of systemd services that matrix-mautrix-twitter.service depends on.
matrix_mautrix_twitter_systemd_required_services_list: ['docker.service']
matrix_mautrix_twitter_systemd_required_services_list: "{{ matrix_mautrix_twitter_systemd_required_services_list_default + matrix_mautrix_twitter_systemd_required_services_list_auto + matrix_mautrix_twitter_systemd_required_services_list_custom }}"
matrix_mautrix_twitter_systemd_required_services_list_default: ['docker.service']
matrix_mautrix_twitter_systemd_required_services_list_auto: []
matrix_mautrix_twitter_systemd_required_services_list_custom: []
# List of systemd services that matrix-mautrix-twitter.service wants
matrix_mautrix_twitter_systemd_wanted_services_list: []
@ -84,9 +122,10 @@ matrix_mautrix_twitter_logging_level: WARNING
# If metrics need to be consumed by another (external) Prometheus server, consider exposing them via `matrix_mautrix_twitter_metrics_proxying_enabled`.
matrix_mautrix_twitter_metrics_enabled: false
# Controls whether metrics should be proxied (exposed) on a public URL
# Controls whether metrics should be exposed on a public URL.
matrix_mautrix_twitter_metrics_proxying_enabled: false
# TODO - add more variables for controlling the hostname, path prefix, etc.
matrix_mautrix_twitter_metrics_proxying_hostname: ''
matrix_mautrix_twitter_metrics_proxying_path_prefix: ''
# Default configuration template which covers the generic use case.
# You can customize it by controlling the various variables inside it.
@ -121,7 +160,7 @@ matrix_mautrix_twitter_registration_yaml: |
- exclusive: true
regex: '^@{{ matrix_mautrix_twitter_appservice_bot_username | regex_escape }}:{{ matrix_mautrix_twitter_homeserver_domain | regex_escape }}$'
url: {{ matrix_mautrix_twitter_appservice_address }}
# See https://github.com/tulir/mautrix-signal/issues/43
# See https://github.com/tulir/mautrix-twitter/issues/43
sender_localpart: _bot_{{ matrix_mautrix_twitter_appservice_bot_username }}
rate_limited: false
de.sorunome.msc2409.push_ephemeral: true