Make Traefik labels files look better

This moves the comments from being just in Jinja,
to actually ending up in the generated `labels` file,
which makes inspection of the final result easier.

Also, some new lines were added here and there to make labels
more legible.

The generated file may still include weird new-lines due to
various `if` statements yielding content or not, but that's not so ugly
anymore - now that we have proper start/end sections that are visible in
the final `labels` file.
This commit is contained in:
Slavi Pantaleev 2024-01-15 10:41:15 +02:00
parent b9148675db
commit 48a4afb114
26 changed files with 948 additions and 419 deletions

View File

@ -5,21 +5,37 @@ traefik.enable=true
traefik.docker.network={{ matrix_bot_maubot_container_labels_traefik_docker_network }}
{% endif %}
{# Management #}
traefik.http.services.matrix-bot-maubot.loadbalancer.server.port={{ matrix_bot_maubot_server_port }}
{% if matrix_bot_maubot_container_labels_management_enabled %}
############################################################
# #
# Management #
# #
############################################################
traefik.http.routers.matrix-bot-maubot-management.rule={{ matrix_bot_maubot_container_labels_management_traefik_rule }}
{% if matrix_bot_maubot_container_labels_management_traefik_priority | int > 0 %}
traefik.http.routers.matrix-bot-maubot-management.priority={{ matrix_bot_maubot_container_labels_management_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-bot-maubot-management.service=matrix-bot-maubot
traefik.http.routers.matrix-bot-maubot-management.entrypoints={{ matrix_bot_maubot_container_labels_management_traefik_entrypoints }}
traefik.http.routers.matrix-bot-maubot-management.tls={{ matrix_bot_maubot_container_labels_management_traefik_tls | to_json }}
{% if matrix_bot_maubot_container_labels_management_traefik_tls %}
traefik.http.routers.matrix-bot-maubot-management.tls.certResolver={{ matrix_bot_maubot_container_labels_management_traefik_tls_certResolver }}
{% endif %}
traefik.http.services.matrix-bot-maubot.loadbalancer.server.port={{ matrix_bot_maubot_server_port }}
############################################################
# #
# /Management #
# #
############################################################
{% endif %}
{% endif %}
{{ matrix_bot_maubot_container_labels_additional_labels }}

View File

@ -5,21 +5,37 @@ traefik.enable=true
traefik.docker.network={{ matrix_appservice_slack_container_labels_traefik_docker_network }}
{% endif %}
{# Public #}
traefik.http.services.matrix-appservice-slack.loadbalancer.server.port={{ matrix_appservice_slack_slack_port }}
{% if matrix_appservice_slack_container_labels_public_endpoint_enabled %}
############################################################
# #
# Public #
# #
############################################################
traefik.http.routers.matrix-appservice-slack-public.rule={{ matrix_appservice_slack_container_labels_public_endpoint_traefik_rule }}
{% if matrix_appservice_slack_container_labels_public_endpoint_traefik_priority | int > 0 %}
traefik.http.routers.matrix-appservice-slack-public.priority={{ matrix_appservice_slack_container_labels_public_endpoint_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-appservice-slack-public.service=matrix-appservice-slack
traefik.http.routers.matrix-appservice-slack-public.entrypoints={{ matrix_appservice_slack_container_labels_public_endpoint_traefik_entrypoints }}
traefik.http.routers.matrix-appservice-slack-public.tls={{ matrix_appservice_slack_container_labels_public_endpoint_traefik_tls | to_json }}
{% if matrix_appservice_slack_container_labels_public_endpoint_traefik_tls %}
traefik.http.routers.matrix-appservice-slack-public.tls.certResolver={{ matrix_appservice_slack_container_labels_public_endpoint_traefik_tls_certResolver }}
{% endif %}
traefik.http.services.matrix-appservice-slack.loadbalancer.server.port={{ matrix_appservice_slack_slack_port }}
############################################################
# #
# /Public #
# #
############################################################
{% endif %}
{% endif %}
{{ matrix_appservice_slack_container_labels_additional_labels }}

View File

@ -5,10 +5,15 @@ traefik.enable=true
traefik.docker.network={{ matrix_appservice_webhooks_container_labels_traefik_docker_network }}
{% endif %}
{#
Start of public
#}
traefik.http.services.matrix-appservice-webhooks.loadbalancer.server.port={{ matrix_appservice_webhooks_matrix_port }}
{% if matrix_appservice_webhooks_container_labels_public_endpoint_enabled %}
############################################################
# #
# Public #
# #
############################################################
traefik.http.middlewares.matrix-appservice-webhooks-public-strip-prefix.stripprefix.prefixes={{ matrix_appservice_webhooks_container_labels_public_endpoint_prefix }}
traefik.http.routers.matrix-appservice-webhooks-public.rule={{ matrix_appservice_webhooks_container_labels_public_endpoint_traefik_rule }}
@ -25,11 +30,14 @@ traefik.http.routers.matrix-appservice-webhooks-public.tls={{ matrix_appservice_
{% if matrix_appservice_webhooks_container_labels_public_endpoint_traefik_tls %}
traefik.http.routers.matrix-appservice-webhooks-public.tls.certResolver={{ matrix_appservice_webhooks_container_labels_public_endpoint_traefik_tls_certResolver }}
{% endif %}
traefik.http.services.matrix-appservice-webhooks.loadbalancer.server.port={{ matrix_appservice_webhooks_matrix_port }}
############################################################
# #
# /Public #
# #
############################################################
{% endif %}
{#
/End of public
#}
{% endif %}

View File

@ -5,96 +5,182 @@ traefik.enable=true
traefik.docker.network={{ matrix_hookshot_container_labels_traefik_docker_network }}
{% endif %}
{# Webhooks #}
{% if matrix_hookshot_container_labels_webhooks_enabled %}
############################################################
# #
# Webhooks #
# #
############################################################
traefik.http.services.matrix-hookshot-webhooks.loadbalancer.server.port={{ matrix_hookshot_webhook_port }}
traefik.http.middlewares.matrix-hookshot-webhooks-strip-prefix.stripprefix.prefixes={{ matrix_hookshot_webhook_endpoint }}
traefik.http.routers.matrix-hookshot-webhooks.rule={{ matrix_hookshot_container_labels_webhooks_traefik_rule }}
traefik.http.routers.matrix-hookshot-webhooks.middlewares=matrix-hookshot-webhooks-strip-prefix
{% if matrix_hookshot_container_labels_webhooks_traefik_priority | int > 0 %}
traefik.http.routers.matrix-hookshot-webhooks.priority={{ matrix_hookshot_container_labels_webhooks_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-hookshot-webhooks.service=matrix-hookshot-webhooks
traefik.http.routers.matrix-hookshot-webhooks.entrypoints={{ matrix_hookshot_container_labels_webhooks_traefik_entrypoints }}
traefik.http.routers.matrix-hookshot-webhooks.tls={{ matrix_hookshot_container_labels_webhooks_traefik_tls | to_json }}
{% if matrix_hookshot_container_labels_webhooks_traefik_tls %}
traefik.http.routers.matrix-hookshot-webhooks.tls.certResolver={{ matrix_hookshot_container_labels_webhooks_traefik_tls_certResolver }}
{% endif %}
traefik.http.middlewares.matrix-hookshot-webhooks-strip-prefix.stripprefix.prefixes={{ matrix_hookshot_webhook_endpoint }}
traefik.http.services.matrix-hookshot-webhooks.loadbalancer.server.port={{ matrix_hookshot_webhook_port }}
############################################################
# #
# /Webhooks #
# #
############################################################
{% endif %}
{# Appservice #}
{% if matrix_hookshot_container_labels_appservice_enabled %}
############################################################
# #
# Appservice #
# #
############################################################
traefik.http.services.matrix-hookshot-appservice.loadbalancer.server.port={{ matrix_hookshot_appservice_port }}
traefik.http.middlewares.matrix-hookshot-appservice-strip-prefix.stripprefix.prefixes={{ matrix_hookshot_appservice_endpoint }}
traefik.http.routers.matrix-hookshot-appservice.rule={{ matrix_hookshot_container_labels_appservice_traefik_rule }}
traefik.http.routers.matrix-hookshot-appservice.middlewares=matrix-hookshot-appservice-strip-prefix
{% if matrix_hookshot_container_labels_appservice_traefik_priority | int > 0 %}
traefik.http.routers.matrix-hookshot-appservice.priority={{ matrix_hookshot_container_labels_appservice_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-hookshot-appservice.service=matrix-hookshot-appservice
traefik.http.routers.matrix-hookshot-appservice.entrypoints={{ matrix_hookshot_container_labels_appservice_traefik_entrypoints }}
traefik.http.routers.matrix-hookshot-appservice.tls={{ matrix_hookshot_container_labels_appservice_traefik_tls | to_json }}
{% if matrix_hookshot_container_labels_appservice_traefik_tls %}
traefik.http.routers.matrix-hookshot-appservice.tls.certResolver={{ matrix_hookshot_container_labels_appservice_traefik_tls_certResolver }}
{% endif %}
traefik.http.middlewares.matrix-hookshot-appservice-strip-prefix.stripprefix.prefixes={{ matrix_hookshot_appservice_endpoint }}
traefik.http.services.matrix-hookshot-appservice.loadbalancer.server.port={{ matrix_hookshot_appservice_port }}
############################################################
# #
# /Appservice #
# #
############################################################
{% endif %}
{# Widgets #}
{% if matrix_hookshot_container_labels_widgets_enabled %}
############################################################
# #
# Widgets #
# #
############################################################
traefik.http.services.matrix-hookshot-widgets.loadbalancer.server.port={{ matrix_hookshot_widgets_port }}
traefik.http.middlewares.matrix-hookshot-widgets-strip-prefix.stripprefix.prefixes={{ matrix_hookshot_widgets_endpoint }}
traefik.http.routers.matrix-hookshot-widgets.rule={{ matrix_hookshot_container_labels_widgets_traefik_rule }}
traefik.http.routers.matrix-hookshot-widgets.middlewares=matrix-hookshot-widgets-strip-prefix
{% if matrix_hookshot_container_labels_widgets_traefik_priority | int > 0 %}
traefik.http.routers.matrix-hookshot-widgets.priority={{ matrix_hookshot_container_labels_widgets_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-hookshot-widgets.service=matrix-hookshot-widgets
traefik.http.routers.matrix-hookshot-widgets.entrypoints={{ matrix_hookshot_container_labels_widgets_traefik_entrypoints }}
traefik.http.routers.matrix-hookshot-widgets.tls={{ matrix_hookshot_container_labels_widgets_traefik_tls | to_json }}
{% if matrix_hookshot_container_labels_widgets_traefik_tls %}
traefik.http.routers.matrix-hookshot-widgets.tls.certResolver={{ matrix_hookshot_container_labels_widgets_traefik_tls_certResolver }}
{% endif %}
traefik.http.middlewares.matrix-hookshot-widgets-strip-prefix.stripprefix.prefixes={{ matrix_hookshot_widgets_endpoint }}
traefik.http.services.matrix-hookshot-widgets.loadbalancer.server.port={{ matrix_hookshot_widgets_port }}
############################################################
# #
# /Widgets #
# #
############################################################
{% endif %}
{# Widgets #}
{% if matrix_hookshot_container_labels_provisioning_enabled %}
############################################################
# #
# Provisioning #
# #
############################################################
traefik.http.services.matrix-hookshot-provisioning.loadbalancer.server.port={{ matrix_hookshot_provisioning_port }}
traefik.http.middlewares.matrix-hookshot-provisioning-strip-prefix.stripprefix.prefixes={{ matrix_hookshot_provisioning_endpoint }}
traefik.http.routers.matrix-hookshot-provisioning.rule={{ matrix_hookshot_container_labels_provisioning_traefik_rule }}
traefik.http.routers.matrix-hookshot-provisioning.middlewares=matrix-hookshot-provisioning-strip-prefix
{% if matrix_hookshot_container_labels_provisioning_traefik_priority | int > 0 %}
traefik.http.routers.matrix-hookshot-provisioning.priority={{ matrix_hookshot_container_labels_provisioning_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-hookshot-provisioning.service=matrix-hookshot-provisioning
traefik.http.routers.matrix-hookshot-provisioning.entrypoints={{ matrix_hookshot_container_labels_provisioning_traefik_entrypoints }}
traefik.http.routers.matrix-hookshot-provisioning.tls={{ matrix_hookshot_container_labels_provisioning_traefik_tls | to_json }}
{% if matrix_hookshot_container_labels_provisioning_traefik_tls %}
traefik.http.routers.matrix-hookshot-provisioning.tls.certResolver={{ matrix_hookshot_container_labels_provisioning_traefik_tls_certResolver }}
{% endif %}
traefik.http.middlewares.matrix-hookshot-provisioning-strip-prefix.stripprefix.prefixes={{ matrix_hookshot_provisioning_endpoint }}
traefik.http.services.matrix-hookshot-provisioning.loadbalancer.server.port={{ matrix_hookshot_provisioning_port }}
############################################################
# #
# /Provisioning #
# #
############################################################
{% endif %}
{# Metrics #}
{% if matrix_hookshot_container_labels_metrics_enabled %}
############################################################
# #
# Metrics #
# #
############################################################
traefik.http.services.matrix-hookshot-metrics.loadbalancer.server.port={{ matrix_hookshot_metrics_port }}
{% set metricsMiddlewares = ['matrix-hookshot-metrics-replace-path'] %}
traefik.http.middlewares.matrix-hookshot-metrics-replace-path.replacepath.path=/metrics
{% if matrix_hookshot_container_labels_metrics_middleware_basic_auth_enabled %}
{% set metricsMiddlewares = metricsMiddlewares + ['matrix-hookshot-metrics-basic-auth'] %}
traefik.http.middlewares.matrix-hookshot-metrics-basic-auth.basicauth.users={{ matrix_hookshot_container_labels_metrics_middleware_basic_auth_users }}
{% endif %}
{% if matrix_hookshot_container_labels_metrics_enabled %}
traefik.http.routers.matrix-hookshot-metrics.rule={{ matrix_hookshot_container_labels_metrics_traefik_rule }}
traefik.http.routers.matrix-hookshot-metrics.middlewares={{ metricsMiddlewares | join(',') }}
{% if matrix_hookshot_container_labels_metrics_traefik_priority | int > 0 %}
traefik.http.routers.matrix-hookshot-metrics.priority={{ matrix_hookshot_container_labels_metrics_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-hookshot-metrics.service=matrix-hookshot-metrics
traefik.http.routers.matrix-hookshot-metrics.entrypoints={{ matrix_hookshot_container_labels_metrics_traefik_entrypoints }}
traefik.http.routers.matrix-hookshot-metrics.tls={{ matrix_hookshot_container_labels_metrics_traefik_tls | to_json }}
{% if matrix_hookshot_container_labels_metrics_traefik_tls %}
traefik.http.routers.matrix-hookshot-metrics.tls.certResolver={{ matrix_hookshot_container_labels_metrics_traefik_tls_certResolver }}
{% endif %}
traefik.http.services.matrix-hookshot-metrics.loadbalancer.server.port={{ matrix_hookshot_metrics_port }}
############################################################
# #
# /Metrics #
# #
############################################################
{% endif %}
{% endif %}
{{ matrix_hookshot_container_labels_additional_labels }}

View File

@ -5,40 +5,72 @@ traefik.enable=true
traefik.docker.network={{ matrix_mautrix_facebook_container_labels_traefik_docker_network }}
{% endif %}
{# Public endpoint #}
{% if matrix_mautrix_facebook_container_labels_public_endpoint_enabled %}
############################################################
# #
# Public #
# #
############################################################
traefik.http.services.matrix-mautrix-facebook-appservice.loadbalancer.server.port=29319
traefik.http.routers.matrix-mautrix-facebook-public.rule={{ matrix_mautrix_facebook_container_labels_public_endpoint_traefik_rule }}
{% if matrix_mautrix_facebook_container_labels_public_endpoint_traefik_priority | int > 0 %}
traefik.http.routers.matrix-mautrix-facebook-public.priority={{ matrix_mautrix_facebook_container_labels_public_endpoint_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-mautrix-facebook-public.service=matrix-mautrix-facebook-appservice
traefik.http.routers.matrix-mautrix-facebook-public.entrypoints={{ matrix_mautrix_facebook_container_labels_public_endpoint_traefik_entrypoints }}
traefik.http.routers.matrix-mautrix-facebook-public.tls={{ matrix_mautrix_facebook_container_labels_public_endpoint_traefik_tls | to_json }}
{% if matrix_mautrix_facebook_container_labels_public_endpoint_traefik_tls %}
traefik.http.routers.matrix-mautrix-facebook-public.tls.certResolver={{ matrix_mautrix_facebook_container_labels_public_endpoint_traefik_tls_certResolver }}
{% endif %}
traefik.http.services.matrix-mautrix-facebook-appservice.loadbalancer.server.port=29319
############################################################
# #
# /Public #
# #
############################################################
{% endif %}
{# Metrics #}
{% if matrix_mautrix_facebook_container_labels_metrics_enabled %}
############################################################
# #
# Metrics #
# #
############################################################
traefik.http.services.matrix-mautrix-facebook-metrics.loadbalancer.server.port=8000
{% if matrix_mautrix_facebook_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.middlewares.matrix-mautrix-facebook-metrics-basic-auth.basicauth.users={{ matrix_mautrix_facebook_container_labels_metrics_middleware_basic_auth_users }}
traefik.http.routers.matrix-mautrix-facebook-metrics.middlewares=matrix-mautrix-facebook-metrics-basic-auth
{% endif %}
traefik.http.routers.matrix-mautrix-facebook-metrics.rule={{ matrix_mautrix_facebook_container_labels_metrics_traefik_rule }}
{% if matrix_mautrix_facebook_container_labels_metrics_traefik_priority | int > 0 %}
traefik.http.routers.matrix-mautrix-facebook-metrics.priority={{ matrix_mautrix_facebook_container_labels_metrics_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-mautrix-facebook-metrics.service=matrix-mautrix-facebook-metrics
traefik.http.routers.matrix-mautrix-facebook-metrics.entrypoints={{ matrix_mautrix_facebook_container_labels_metrics_traefik_entrypoints }}
traefik.http.routers.matrix-mautrix-facebook-metrics.tls={{ matrix_mautrix_facebook_container_labels_metrics_traefik_tls | to_json }}
{% if matrix_mautrix_facebook_container_labels_metrics_traefik_tls %}
traefik.http.routers.matrix-mautrix-facebook-metrics.tls.certResolver={{ matrix_mautrix_facebook_container_labels_metrics_traefik_tls_certResolver }}
{% endif %}
{% if matrix_mautrix_facebook_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.routers.matrix-mautrix-facebook-metrics.middlewares=matrix-mautrix-facebook-metrics-basic-auth
traefik.http.middlewares.matrix-mautrix-facebook-metrics-basic-auth.basicauth.users={{ matrix_mautrix_facebook_container_labels_metrics_middleware_basic_auth_users }}
############################################################
# #
# /Metrics #
# #
############################################################
{% endif %}
traefik.http.services.matrix-mautrix-facebook-metrics.loadbalancer.server.port=8000
{% endif %}
{% endif %}

View File

@ -5,30 +5,41 @@ traefik.enable=true
traefik.docker.network={{ matrix_mautrix_gmessages_container_labels_traefik_docker_network }}
{% endif %}
{#
Metrics
#}
{% if matrix_mautrix_gmessages_container_labels_metrics_enabled %}
############################################################
# #
# Metrics #
# #
############################################################
traefik.http.services.matrix-mautrix-gmessages-metrics.loadbalancer.server.port=8001
{% if matrix_mautrix_gmessages_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.middlewares.matrix-mautrix-gmessages-metrics-basic-auth.basicauth.users={{ matrix_mautrix_gmessages_container_labels_metrics_middleware_basic_auth_users }}
traefik.http.routers.matrix-mautrix-gmessages-metrics.middlewares=matrix-mautrix-gmessages-metrics-basic-auth
{% endif %}
traefik.http.routers.matrix-mautrix-gmessages-metrics.rule={{ matrix_mautrix_gmessages_container_labels_metrics_traefik_rule }}
{% if matrix_mautrix_gmessages_container_labels_metrics_traefik_priority | int > 0 %}
traefik.http.routers.matrix-mautrix-gmessages-metrics.priority={{ matrix_mautrix_gmessages_container_labels_metrics_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-mautrix-gmessages-metrics.service=matrix-mautrix-gmessages-metrics
traefik.http.routers.matrix-mautrix-gmessages-metrics.entrypoints={{ matrix_mautrix_gmessages_container_labels_metrics_traefik_entrypoints }}
traefik.http.routers.matrix-mautrix-gmessages-metrics.tls={{ matrix_mautrix_gmessages_container_labels_metrics_traefik_tls | to_json }}
{% if matrix_mautrix_gmessages_container_labels_metrics_traefik_tls %}
traefik.http.routers.matrix-mautrix-gmessages-metrics.tls.certResolver={{ matrix_mautrix_gmessages_container_labels_metrics_traefik_tls_certResolver }}
{% endif %}
{% if matrix_mautrix_gmessages_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.routers.matrix-mautrix-gmessages-metrics.middlewares=matrix-mautrix-gmessages-metrics-basic-auth
traefik.http.middlewares.matrix-mautrix-gmessages-metrics-basic-auth.basicauth.users={{ matrix_mautrix_gmessages_container_labels_metrics_middleware_basic_auth_users }}
############################################################
# #
# /Metrics #
# #
############################################################
{% endif %}
traefik.http.services.matrix-mautrix-gmessages-metrics.loadbalancer.server.port=8001
{% endif %}
{#
/Metrics
#}
{% endif %}

View File

@ -5,50 +5,72 @@ traefik.enable=true
traefik.docker.network={{ matrix_mautrix_googlechat_container_labels_traefik_docker_network }}
{% endif %}
{#
Public
#}
{% if matrix_mautrix_googlechat_container_labels_public_endpoint_enabled %}
############################################################
# #
# Public #
# #
############################################################
traefik.http.services.matrix-mautrix-googlechat-public.loadbalancer.server.port=8080
traefik.http.routers.matrix-mautrix-googlechat-public.rule={{ matrix_mautrix_googlechat_container_labels_public_endpoint_traefik_rule }}
{% if matrix_mautrix_googlechat_container_labels_public_endpoint_traefik_priority | int > 0 %}
traefik.http.routers.matrix-mautrix-googlechat-public.priority={{ matrix_mautrix_googlechat_container_labels_public_endpoint_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-mautrix-googlechat-public.service=matrix-mautrix-googlechat-public
traefik.http.routers.matrix-mautrix-googlechat-public.entrypoints={{ matrix_mautrix_googlechat_container_labels_public_endpoint_traefik_entrypoints }}
traefik.http.routers.matrix-mautrix-googlechat-public.tls={{ matrix_mautrix_googlechat_container_labels_public_endpoint_traefik_tls | to_json }}
{% if matrix_mautrix_googlechat_container_labels_public_endpoint_traefik_tls %}
traefik.http.routers.matrix-mautrix-googlechat-public.tls.certResolver={{ matrix_mautrix_googlechat_container_labels_public_endpoint_traefik_tls_certResolver }}
{% endif %}
traefik.http.services.matrix-mautrix-googlechat-public.loadbalancer.server.port=8080
{% endif %}
{#
/Public
#}
{#
Metrics
#}
############################################################
# #
# /Public #
# #
############################################################
{% endif %}
{% if matrix_mautrix_googlechat_container_labels_metrics_enabled %}
############################################################
# #
# Metrics #
# #
############################################################
traefik.http.services.matrix-mautrix-googlechat-metrics.loadbalancer.server.port=8000
{% if matrix_mautrix_googlechat_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.middlewares.matrix-mautrix-googlechat-metrics-basic-auth.basicauth.users={{ matrix_mautrix_googlechat_container_labels_metrics_middleware_basic_auth_users }}
traefik.http.routers.matrix-mautrix-googlechat-metrics.middlewares=matrix-mautrix-googlechat-metrics-basic-auth
{% endif %}
traefik.http.routers.matrix-mautrix-googlechat-metrics.rule={{ matrix_mautrix_googlechat_container_labels_metrics_traefik_rule }}
{% if matrix_mautrix_googlechat_container_labels_metrics_traefik_priority | int > 0 %}
traefik.http.routers.matrix-mautrix-googlechat-metrics.priority={{ matrix_mautrix_googlechat_container_labels_metrics_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-mautrix-googlechat-metrics.service=matrix-mautrix-googlechat-metrics
traefik.http.routers.matrix-mautrix-googlechat-metrics.entrypoints={{ matrix_mautrix_googlechat_container_labels_metrics_traefik_entrypoints }}
traefik.http.routers.matrix-mautrix-googlechat-metrics.tls={{ matrix_mautrix_googlechat_container_labels_metrics_traefik_tls | to_json }}
{% if matrix_mautrix_googlechat_container_labels_metrics_traefik_tls %}
traefik.http.routers.matrix-mautrix-googlechat-metrics.tls.certResolver={{ matrix_mautrix_googlechat_container_labels_metrics_traefik_tls_certResolver }}
{% endif %}
{% if matrix_mautrix_googlechat_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.routers.matrix-mautrix-googlechat-metrics.middlewares=matrix-mautrix-googlechat-metrics-basic-auth
traefik.http.middlewares.matrix-mautrix-googlechat-metrics-basic-auth.basicauth.users={{ matrix_mautrix_googlechat_container_labels_metrics_middleware_basic_auth_users }}
############################################################
# #
# /Metrics #
# #
############################################################
{% endif %}
traefik.http.services.matrix-mautrix-googlechat-metrics.loadbalancer.server.port=8000
{% endif %}
{#
/Metrics
#}
{% endif %}

View File

@ -5,50 +5,72 @@ traefik.enable=true
traefik.docker.network={{ matrix_mautrix_hangouts_container_labels_traefik_docker_network }}
{% endif %}
{#
Public
#}
{% if matrix_mautrix_hangouts_container_labels_public_endpoint_enabled %}
############################################################
# #
# Public #
# #
############################################################
traefik.http.services.matrix-mautrix-hangouts-public.loadbalancer.server.port=8080
traefik.http.routers.matrix-mautrix-hangouts-public.rule={{ matrix_mautrix_hangouts_container_labels_public_endpoint_traefik_rule }}
{% if matrix_mautrix_hangouts_container_labels_public_endpoint_traefik_priority | int > 0 %}
traefik.http.routers.matrix-mautrix-hangouts-public.priority={{ matrix_mautrix_hangouts_container_labels_public_endpoint_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-mautrix-hangouts-public.service=matrix-mautrix-hangouts-public
traefik.http.routers.matrix-mautrix-hangouts-public.entrypoints={{ matrix_mautrix_hangouts_container_labels_public_endpoint_traefik_entrypoints }}
traefik.http.routers.matrix-mautrix-hangouts-public.tls={{ matrix_mautrix_hangouts_container_labels_public_endpoint_traefik_tls | to_json }}
{% if matrix_mautrix_hangouts_container_labels_public_endpoint_traefik_tls %}
traefik.http.routers.matrix-mautrix-hangouts-public.tls.certResolver={{ matrix_mautrix_hangouts_container_labels_public_endpoint_traefik_tls_certResolver }}
{% endif %}
traefik.http.services.matrix-mautrix-hangouts-public.loadbalancer.server.port=8080
{% endif %}
{#
/Public
#}
{#
Metrics
#}
############################################################
# #
# /Public #
# #
############################################################
{% endif %}
{% if matrix_mautrix_hangouts_container_labels_metrics_enabled %}
############################################################
# #
# Metrics #
# #
############################################################
traefik.http.services.matrix-mautrix-hangouts-metrics.loadbalancer.server.port=8000
{% if matrix_mautrix_hangouts_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.middlewares.matrix-mautrix-hangouts-metrics-basic-auth.basicauth.users={{ matrix_mautrix_hangouts_container_labels_metrics_middleware_basic_auth_users }}
traefik.http.routers.matrix-mautrix-hangouts-metrics.middlewares=matrix-mautrix-hangouts-metrics-basic-auth
{% endif %}
traefik.http.routers.matrix-mautrix-hangouts-metrics.rule={{ matrix_mautrix_hangouts_container_labels_metrics_traefik_rule }}
{% if matrix_mautrix_hangouts_container_labels_metrics_traefik_priority | int > 0 %}
traefik.http.routers.matrix-mautrix-hangouts-metrics.priority={{ matrix_mautrix_hangouts_container_labels_metrics_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-mautrix-hangouts-metrics.service=matrix-mautrix-hangouts-metrics
traefik.http.routers.matrix-mautrix-hangouts-metrics.entrypoints={{ matrix_mautrix_hangouts_container_labels_metrics_traefik_entrypoints }}
traefik.http.routers.matrix-mautrix-hangouts-metrics.tls={{ matrix_mautrix_hangouts_container_labels_metrics_traefik_tls | to_json }}
{% if matrix_mautrix_hangouts_container_labels_metrics_traefik_tls %}
traefik.http.routers.matrix-mautrix-hangouts-metrics.tls.certResolver={{ matrix_mautrix_hangouts_container_labels_metrics_traefik_tls_certResolver }}
{% endif %}
{% if matrix_mautrix_hangouts_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.routers.matrix-mautrix-hangouts-metrics.middlewares=matrix-mautrix-hangouts-metrics-basic-auth
traefik.http.middlewares.matrix-mautrix-hangouts-metrics-basic-auth.basicauth.users={{ matrix_mautrix_hangouts_container_labels_metrics_middleware_basic_auth_users }}
############################################################
# #
# /Metrics #
# #
############################################################
{% endif %}
traefik.http.services.matrix-mautrix-hangouts-metrics.loadbalancer.server.port=8000
{% endif %}
{#
/Metrics
#}
{% endif %}

View File

@ -5,25 +5,41 @@ traefik.enable=true
traefik.docker.network={{ matrix_mautrix_instagram_container_labels_traefik_docker_network }}
{% endif %}
{# Metrics #}
{% if matrix_mautrix_instagram_container_labels_metrics_enabled %}
############################################################
# #
# Metrics #
# #
############################################################
traefik.http.services.matrix-mautrix-instagram-metrics.loadbalancer.server.port=8000
{% if matrix_mautrix_instagram_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.middlewares.matrix-mautrix-instagram-metrics-basic-auth.basicauth.users={{ matrix_mautrix_instagram_container_labels_metrics_middleware_basic_auth_users }}
traefik.http.routers.matrix-mautrix-instagram-metrics.middlewares=matrix-mautrix-instagram-metrics-basic-auth
{% endif %}
traefik.http.routers.matrix-mautrix-instagram-metrics.rule={{ matrix_mautrix_instagram_container_labels_metrics_traefik_rule }}
{% if matrix_mautrix_instagram_container_labels_metrics_traefik_priority | int > 0 %}
traefik.http.routers.matrix-mautrix-instagram-metrics.priority={{ matrix_mautrix_instagram_container_labels_metrics_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-mautrix-instagram-metrics.service=matrix-mautrix-instagram-metrics
traefik.http.routers.matrix-mautrix-instagram-metrics.entrypoints={{ matrix_mautrix_instagram_container_labels_metrics_traefik_entrypoints }}
traefik.http.routers.matrix-mautrix-instagram-metrics.tls={{ matrix_mautrix_instagram_container_labels_metrics_traefik_tls | to_json }}
{% if matrix_mautrix_instagram_container_labels_metrics_traefik_tls %}
traefik.http.routers.matrix-mautrix-instagram-metrics.tls.certResolver={{ matrix_mautrix_instagram_container_labels_metrics_traefik_tls_certResolver }}
{% endif %}
{% if matrix_mautrix_instagram_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.routers.matrix-mautrix-instagram-metrics.middlewares=matrix-mautrix-instagram-metrics-basic-auth
traefik.http.middlewares.matrix-mautrix-instagram-metrics-basic-auth.basicauth.users={{ matrix_mautrix_instagram_container_labels_metrics_middleware_basic_auth_users }}
############################################################
# #
# /Metrics #
# #
############################################################
{% endif %}
traefik.http.services.matrix-mautrix-instagram-metrics.loadbalancer.server.port=8000
{% endif %}
{% endif %}

View File

@ -5,25 +5,41 @@ traefik.enable=true
traefik.docker.network={{ matrix_mautrix_signal_container_labels_traefik_docker_network }}
{% endif %}
{# Metrics #}
{% if matrix_mautrix_signal_container_labels_metrics_enabled %}
############################################################
# #
# Metrics #
# #
############################################################
traefik.http.services.matrix-mautrix-signal-metrics.loadbalancer.server.port=8000
{% if matrix_mautrix_signal_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.middlewares.matrix-mautrix-signal-metrics-basic-auth.basicauth.users={{ matrix_mautrix_signal_container_labels_metrics_middleware_basic_auth_users }}
traefik.http.routers.matrix-mautrix-signal-metrics.middlewares=matrix-mautrix-signal-metrics-basic-auth
{% endif %}
traefik.http.routers.matrix-mautrix-signal-metrics.rule={{ matrix_mautrix_signal_container_labels_metrics_traefik_rule }}
{% if matrix_mautrix_signal_container_labels_metrics_traefik_priority | int > 0 %}
traefik.http.routers.matrix-mautrix-signal-metrics.priority={{ matrix_mautrix_signal_container_labels_metrics_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-mautrix-signal-metrics.service=matrix-mautrix-signal-metrics
traefik.http.routers.matrix-mautrix-signal-metrics.entrypoints={{ matrix_mautrix_signal_container_labels_metrics_traefik_entrypoints }}
traefik.http.routers.matrix-mautrix-signal-metrics.tls={{ matrix_mautrix_signal_container_labels_metrics_traefik_tls | to_json }}
{% if matrix_mautrix_signal_container_labels_metrics_traefik_tls %}
traefik.http.routers.matrix-mautrix-signal-metrics.tls.certResolver={{ matrix_mautrix_signal_container_labels_metrics_traefik_tls_certResolver }}
{% endif %}
{% if matrix_mautrix_signal_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.routers.matrix-mautrix-signal-metrics.middlewares=matrix-mautrix-signal-metrics-basic-auth
traefik.http.middlewares.matrix-mautrix-signal-metrics-basic-auth.basicauth.users={{ matrix_mautrix_signal_container_labels_metrics_middleware_basic_auth_users }}
############################################################
# #
# /Metrics #
# #
############################################################
{% endif %}
traefik.http.services.matrix-mautrix-signal-metrics.loadbalancer.server.port=8000
{% endif %}
{% endif %}

View File

@ -5,40 +5,72 @@ traefik.enable=true
traefik.docker.network={{ matrix_mautrix_telegram_container_labels_traefik_docker_network }}
{% endif %}
{# Public endpoint #}
{% if matrix_mautrix_telegram_container_labels_public_endpoint_enabled %}
############################################################
# #
# Public #
# #
############################################################
traefik.http.services.matrix-mautrix-telegram-appservice.loadbalancer.server.port=8080
traefik.http.routers.matrix-mautrix-telegram-public.rule={{ matrix_mautrix_telegram_container_labels_public_endpoint_traefik_rule }}
{% if matrix_mautrix_telegram_container_labels_public_endpoint_traefik_priority | int > 0 %}
traefik.http.routers.matrix-mautrix-telegram-public.priority={{ matrix_mautrix_telegram_container_labels_public_endpoint_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-mautrix-telegram-public.service=matrix-mautrix-telegram-appservice
traefik.http.routers.matrix-mautrix-telegram-public.entrypoints={{ matrix_mautrix_telegram_container_labels_public_endpoint_traefik_entrypoints }}
traefik.http.routers.matrix-mautrix-telegram-public.tls={{ matrix_mautrix_telegram_container_labels_public_endpoint_traefik_tls | to_json }}
{% if matrix_mautrix_telegram_container_labels_public_endpoint_traefik_tls %}
traefik.http.routers.matrix-mautrix-telegram-public.tls.certResolver={{ matrix_mautrix_telegram_container_labels_public_endpoint_traefik_tls_certResolver }}
{% endif %}
traefik.http.services.matrix-mautrix-telegram-appservice.loadbalancer.server.port=8080
############################################################
# #
# /Public #
# #
############################################################
{% endif %}
{# Metrics #}
{% if matrix_mautrix_telegram_container_labels_metrics_enabled %}
############################################################
# #
# Metrics #
# #
############################################################
traefik.http.services.matrix-mautrix-telegram-metrics.loadbalancer.server.port=8000
{% if matrix_mautrix_telegram_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.middlewares.matrix-mautrix-telegram-metrics-basic-auth.basicauth.users={{ matrix_mautrix_telegram_container_labels_metrics_middleware_basic_auth_users }}
traefik.http.routers.matrix-mautrix-telegram-metrics.middlewares=matrix-mautrix-telegram-metrics-basic-auth
{% endif %}
traefik.http.routers.matrix-mautrix-telegram-metrics.rule={{ matrix_mautrix_telegram_container_labels_metrics_traefik_rule }}
{% if matrix_mautrix_telegram_container_labels_metrics_traefik_priority | int > 0 %}
traefik.http.routers.matrix-mautrix-telegram-metrics.priority={{ matrix_mautrix_telegram_container_labels_metrics_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-mautrix-telegram-metrics.service=matrix-mautrix-telegram-metrics
traefik.http.routers.matrix-mautrix-telegram-metrics.entrypoints={{ matrix_mautrix_telegram_container_labels_metrics_traefik_entrypoints }}
traefik.http.routers.matrix-mautrix-telegram-metrics.tls={{ matrix_mautrix_telegram_container_labels_metrics_traefik_tls | to_json }}
{% if matrix_mautrix_telegram_container_labels_metrics_traefik_tls %}
traefik.http.routers.matrix-mautrix-telegram-metrics.tls.certResolver={{ matrix_mautrix_telegram_container_labels_metrics_traefik_tls_certResolver }}
{% endif %}
{% if matrix_mautrix_telegram_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.routers.matrix-mautrix-telegram-metrics.middlewares=matrix-mautrix-telegram-metrics-basic-auth
traefik.http.middlewares.matrix-mautrix-telegram-metrics-basic-auth.basicauth.users={{ matrix_mautrix_telegram_container_labels_metrics_middleware_basic_auth_users }}
############################################################
# #
# /Metrics #
# #
############################################################
{% endif %}
traefik.http.services.matrix-mautrix-telegram-metrics.loadbalancer.server.port=8000
{% endif %}
{% endif %}

View File

@ -5,25 +5,41 @@ traefik.enable=true
traefik.docker.network={{ matrix_mautrix_twitter_container_labels_traefik_docker_network }}
{% endif %}
{# Metrics #}
{% if matrix_mautrix_twitter_container_labels_metrics_enabled %}
############################################################
# #
# Metrics #
# #
############################################################
traefik.http.services.matrix-mautrix-twitter-metrics.loadbalancer.server.port=8000
{% if matrix_mautrix_twitter_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.middlewares.matrix-mautrix-twitter-metrics-basic-auth.basicauth.users={{ matrix_mautrix_twitter_container_labels_metrics_middleware_basic_auth_users }}
traefik.http.routers.matrix-mautrix-twitter-metrics.middlewares=matrix-mautrix-twitter-metrics-basic-auth
{% endif %}
traefik.http.routers.matrix-mautrix-twitter-metrics.rule={{ matrix_mautrix_twitter_container_labels_metrics_traefik_rule }}
{% if matrix_mautrix_twitter_container_labels_metrics_traefik_priority | int > 0 %}
traefik.http.routers.matrix-mautrix-twitter-metrics.priority={{ matrix_mautrix_twitter_container_labels_metrics_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-mautrix-twitter-metrics.service=matrix-mautrix-twitter-metrics
traefik.http.routers.matrix-mautrix-twitter-metrics.entrypoints={{ matrix_mautrix_twitter_container_labels_metrics_traefik_entrypoints }}
traefik.http.routers.matrix-mautrix-twitter-metrics.tls={{ matrix_mautrix_twitter_container_labels_metrics_traefik_tls | to_json }}
{% if matrix_mautrix_twitter_container_labels_metrics_traefik_tls %}
traefik.http.routers.matrix-mautrix-twitter-metrics.tls.certResolver={{ matrix_mautrix_twitter_container_labels_metrics_traefik_tls_certResolver }}
{% endif %}
{% if matrix_mautrix_twitter_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.routers.matrix-mautrix-twitter-metrics.middlewares=matrix-mautrix-twitter-metrics-basic-auth
traefik.http.middlewares.matrix-mautrix-twitter-metrics-basic-auth.basicauth.users={{ matrix_mautrix_twitter_container_labels_metrics_middleware_basic_auth_users }}
############################################################
# #
# /Metrics #
# #
############################################################
{% endif %}
traefik.http.services.matrix-mautrix-twitter-metrics.loadbalancer.server.port=8000
{% endif %}
{% endif %}

View File

@ -5,25 +5,41 @@ traefik.enable=true
traefik.docker.network={{ matrix_mautrix_whatsapp_container_labels_traefik_docker_network }}
{% endif %}
{# Metrics #}
{% if matrix_mautrix_whatsapp_container_labels_metrics_enabled %}
############################################################
# #
# Metrics #
# #
############################################################
traefik.http.services.matrix-mautrix-whatsapp-metrics.loadbalancer.server.port=8001
{% if matrix_mautrix_whatsapp_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.middlewares.matrix-mautrix-whatsapp-metrics-basic-auth.basicauth.users={{ matrix_mautrix_whatsapp_container_labels_metrics_middleware_basic_auth_users }}
traefik.http.routers.matrix-mautrix-whatsapp-metrics.middlewares=matrix-mautrix-whatsapp-metrics-basic-auth
{% endif %}
traefik.http.routers.matrix-mautrix-whatsapp-metrics.rule={{ matrix_mautrix_whatsapp_container_labels_metrics_traefik_rule }}
{% if matrix_mautrix_whatsapp_container_labels_metrics_traefik_priority | int > 0 %}
traefik.http.routers.matrix-mautrix-whatsapp-metrics.priority={{ matrix_mautrix_whatsapp_container_labels_metrics_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-mautrix-whatsapp-metrics.service=matrix-mautrix-whatsapp-metrics
traefik.http.routers.matrix-mautrix-whatsapp-metrics.entrypoints={{ matrix_mautrix_whatsapp_container_labels_metrics_traefik_entrypoints }}
traefik.http.routers.matrix-mautrix-whatsapp-metrics.tls={{ matrix_mautrix_whatsapp_container_labels_metrics_traefik_tls | to_json }}
{% if matrix_mautrix_whatsapp_container_labels_metrics_traefik_tls %}
traefik.http.routers.matrix-mautrix-whatsapp-metrics.tls.certResolver={{ matrix_mautrix_whatsapp_container_labels_metrics_traefik_tls_certResolver }}
{% endif %}
{% if matrix_mautrix_whatsapp_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.routers.matrix-mautrix-whatsapp-metrics.middlewares=matrix-mautrix-whatsapp-metrics-basic-auth
traefik.http.middlewares.matrix-mautrix-whatsapp-metrics-basic-auth.basicauth.users={{ matrix_mautrix_whatsapp_container_labels_metrics_middleware_basic_auth_users }}
############################################################
# #
# /Metrics #
# #
############################################################
{% endif %}
traefik.http.services.matrix-mautrix-whatsapp-metrics.loadbalancer.server.port=8001
{% endif %}
{% endif %}

View File

@ -5,19 +5,34 @@ traefik.enable=true
traefik.docker.network={{ matrix_mx_puppet_slack_container_labels_traefik_docker_network }}
{% endif %}
{# Public endpoint #}
{% if matrix_mx_puppet_slack_container_labels_public_endpoint_enabled %}
############################################################
# #
# Public #
# #
############################################################
traefik.http.services.matrix-mx-puppet-slack.loadbalancer.server.port={{ matrix_mx_puppet_slack_appservice_address }}
traefik.http.routers.matrix-mx-puppet-slack-public.rule={{ matrix_mx_puppet_slack_container_labels_public_endpoint_traefik_rule }}
{% if matrix_mx_puppet_slack_container_labels_public_endpoint_traefik_priority | int > 0 %}
traefik.http.routers.matrix-mx-puppet-slack-public.priority={{ matrix_mx_puppet_slack_container_labels_public_endpoint_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-mx-puppet-slack-public.service=matrix-mx-puppet-slack
traefik.http.routers.matrix-mx-puppet-slack-public.entrypoints={{ matrix_mx_puppet_slack_container_labels_public_endpoint_traefik_entrypoints }}
traefik.http.routers.matrix-mx-puppet-slack-public.tls={{ matrix_mx_puppet_slack_container_labels_public_endpoint_traefik_tls | to_json }}
{% if matrix_mx_puppet_slack_container_labels_public_endpoint_traefik_tls %}
traefik.http.routers.matrix-mx-puppet-slack-public.tls.certResolver={{ matrix_mx_puppet_slack_container_labels_public_endpoint_traefik_tls_certResolver }}
{% endif %}
traefik.http.services.matrix-mx-puppet-slack.loadbalancer.server.port={{ matrix_mx_puppet_slack_appservice_address }}
############################################################
# #
# /Public #
# #
############################################################
{% endif %}

View File

@ -5,19 +5,33 @@ traefik.enable=true
traefik.docker.network={{ matrix_mx_puppet_twitter_container_labels_traefik_docker_network }}
{% endif %}
{# Public endpoint #}
{% if matrix_mx_puppet_twitter_container_labels_public_endpoint_enabled %}
############################################################
# #
# Public #
# #
############################################################
traefik.http.services.martix-mx-puppet-twitter.loadbalancer.server.port={{ matrix_mx_puppet_twitter_appservice_port }}
traefik.http.routers.matrix-mx-puppet-twitter-public.rule={{ matrix_mx_puppet_twitter_container_labels_public_endpoint_traefik_rule }}
{% if matrix_mx_puppet_twitter_container_labels_public_endpoint_traefik_priority | int > 0 %}
traefik.http.routers.matrix-mx-puppet-twitter-public.priority={{ matrix_mx_puppet_twitter_container_labels_public_endpoint_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-mx-puppet-twitter-public.service=martix-mx-puppet-twitter
traefik.http.routers.matrix-mx-puppet-twitter-public.entrypoints={{ matrix_mx_puppet_twitter_container_labels_public_endpoint_traefik_entrypoints }}
traefik.http.routers.matrix-mx-puppet-twitter-public.tls={{ matrix_mx_puppet_twitter_container_labels_public_endpoint_traefik_tls | to_json }}
{% if matrix_mx_puppet_twitter_container_labels_public_endpoint_traefik_tls %}
traefik.http.routers.matrix-mx-puppet-twitter-public.tls.certResolver={{ matrix_mx_puppet_twitter_container_labels_public_endpoint_traefik_tls_certResolver }}
{% endif %}
traefik.http.services.martix-mx-puppet-twitter.loadbalancer.server.port={{ matrix_mx_puppet_twitter_appservice_port }}
############################################################
# #
# /Public #
# #
############################################################
{% endif %}

View File

@ -5,12 +5,15 @@ traefik.enable=true
traefik.docker.network={{ matrix_cactus_comments_client_container_labels_traefik_docker_network }}
{% endif %}
traefik.http.services.matrix-cactus-comments-client.loadbalancer.server.port={{ matrix_cactus_comments_client_environment_variable_server_port }}
{#
Public
#}
{% if matrix_cactus_comments_client_container_labels_public_enabled %}
############################################################
# #
# Public #
# #
############################################################
traefik.http.services.matrix-cactus-comments-client.loadbalancer.server.port={{ matrix_cactus_comments_client_environment_variable_server_port }}
{% set public_middlewares = [] %}
@ -37,10 +40,13 @@ traefik.http.routers.matrix-cactus-comments-client-base-domain.tls={{ matrix_cac
traefik.http.routers.matrix-cactus-comments-client-base-domain.tls.certResolver={{ matrix_cactus_comments_client_container_labels_public_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public #
# #
############################################################
{% endif %}
{#
/Public
#}
{% endif %}

View File

@ -8,10 +8,12 @@ traefik.docker.network={{ matrix_conduit_container_labels_traefik_docker_network
traefik.http.services.matrix-conduit.loadbalancer.server.port={{ matrix_conduit_port_number }}
{#
Public Root path (/)
#}
{% if matrix_conduit_container_labels_public_client_root_enabled %}
############################################################
# #
# Public Root path (/) #
# #
############################################################
{% set client_root_middlewares = [] %}
@ -37,16 +39,20 @@ traefik.http.routers.matrix-conduit-public-client-root.tls={{ matrix_conduit_con
traefik.http.routers.matrix-conduit-public-client-root.tls.certResolver={{ matrix_conduit_container_labels_public_client_root_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Root path (/) #
# #
############################################################
{% endif %}
{#
/Public Root path (/)
#}
{#
Public Client-API (/_matrix)
#}
{% if matrix_conduit_container_labels_public_client_api_enabled %}
############################################################
# #
# Public Client-API (/_matrix) #
# #
############################################################
traefik.http.routers.matrix-conduit-public-client-api.rule={{ matrix_conduit_container_labels_public_client_api_traefik_rule }}
@ -62,16 +68,20 @@ traefik.http.routers.matrix-conduit-public-client-api.tls={{ matrix_conduit_cont
traefik.http.routers.matrix-conduit-public-client-api.tls.certResolver={{ matrix_conduit_container_labels_public_client_api_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Client-API (/_matrix) #
# #
############################################################
{% endif %}
{#
/Public Client-API (/_matrix)
#}
{#
Internal Client-API (/_matrix)
#}
{% if matrix_conduit_container_labels_internal_client_api_enabled %}
############################################################
# #
# Internal Client-API (/_matrix) #
# #
############################################################
traefik.http.routers.matrix-conduit-public-client-api.rule={{ matrix_conduit_container_labels_internal_client_api_traefik_rule }}
@ -82,16 +92,20 @@ traefik.http.routers.matrix-conduit-public-client-api.priority={{ matrix_conduit
traefik.http.routers.matrix-conduit-public-client-api.service=matrix-conduit
traefik.http.routers.matrix-conduit-public-client-api.entrypoints={{ matrix_conduit_container_labels_internal_client_api_traefik_entrypoints }}
############################################################
# #
# /Internal Client-API (/_matrix) #
# #
############################################################
{% endif %}
{#
/Internal Client-API (/_matrix)
#}
{#
Public Federation-API (/_matrix)
#}
{% if matrix_conduit_container_labels_public_federation_api_enabled %}
############################################################
# #
# Public Federation-API (/_matrix) #
# #
############################################################
traefik.http.routers.matrix-conduit-public-federation-api.rule={{ matrix_conduit_container_labels_public_federation_api_traefik_rule }}
@ -107,10 +121,13 @@ traefik.http.routers.matrix-conduit-public-federation-api.tls={{ matrix_conduit_
traefik.http.routers.matrix-conduit-public-federation-api.tls.certResolver={{ matrix_conduit_container_labels_public_federation_api_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Federation-API (/_matrix) #
# #
############################################################
{% endif %}
{#
/Public Federation-API (/_matrix)
#}
{% endif %}

View File

@ -5,13 +5,16 @@ traefik.enable=true
traefik.docker.network={{ matrix_corporal_container_labels_traefik_docker_network }}
{% endif %}
traefik.http.services.matrix-corporal-gateway.loadbalancer.server.port=41080
{% if matrix_corporal_container_labels_api_enabled %}
############################################################
# #
# Corporal API (/_matrix/corporal) #
# #
############################################################
traefik.http.services.matrix-corporal-api.loadbalancer.server.port=41081
{#
Corporal API (/_matrix/corporal)
#}
{% if matrix_corporal_container_labels_api_enabled %}
traefik.http.routers.matrix-corporal-api.rule={{ matrix_corporal_container_labels_api_traefik_rule }}
{% if matrix_corporal_container_labels_api_traefik_priority | int > 0 %}
@ -26,15 +29,23 @@ traefik.http.routers.matrix-corporal-api.tls={{ matrix_corporal_container_labels
traefik.http.routers.matrix-corporal-api.tls.certResolver={{ matrix_corporal_container_labels_api_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Corporal API (/_matrix/corporal) #
# #
############################################################
{% endif %}
{#
/Corporal API (/_matrix/corporal)
#}
{#
Matrix Client-Server API (/_matrix)
#}
{% if matrix_corporal_container_labels_matrix_client_api_enabled %}
############################################################
# #
# Matrix Client-Server API (/_matrix) #
# #
############################################################
traefik.http.services.matrix-corporal-gateway.loadbalancer.server.port=41080
traefik.http.routers.matrix-corporal-matrix-client-api.rule={{ matrix_corporal_container_labels_matrix_client_api_traefik_rule }}
{% if matrix_corporal_container_labels_matrix_client_api_traefik_priority | int > 0 %}
@ -49,10 +60,13 @@ traefik.http.routers.matrix-corporal-matrix-client-api.tls={{ matrix_corporal_co
traefik.http.routers.matrix-corporal-matrix-client-api.tls.certResolver={{ matrix_corporal_container_labels_matrix_client_api_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Matrix Client-Server API (/_matrix) #
# #
############################################################
{% endif %}
{#
/Matrix Client-Server API (/_matrix)
#}
{% endif %}

View File

@ -8,10 +8,12 @@ traefik.docker.network={{ matrix_dendrite_container_labels_traefik_docker_networ
traefik.http.services.matrix-dendrite.loadbalancer.server.port={{ matrix_dendrite_http_bind_port }}
{#
Public Root path (/)
#}
{% if matrix_dendrite_container_labels_public_client_root_enabled %}
############################################################
# #
# Public Root path (/) #
# #
############################################################
{% set client_root_middlewares = [] %}
@ -37,16 +39,20 @@ traefik.http.routers.matrix-dendrite-public-client-root.tls={{ matrix_dendrite_c
traefik.http.routers.matrix-dendrite-public-client-root.tls.certResolver={{ matrix_dendrite_container_labels_public_client_root_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Root path (/) #
# #
############################################################
{% endif %}
{#
/Public Root path (/)
#}
{#
Public Client-API (/_matrix)
#}
{% if matrix_dendrite_container_labels_public_client_api_enabled %}
############################################################
# #
# Public Client-API (/_matrix) #
# #
############################################################
traefik.http.routers.matrix-dendrite-public-client-api.rule={{ matrix_dendrite_container_labels_public_client_api_traefik_rule }}
@ -62,16 +68,20 @@ traefik.http.routers.matrix-dendrite-public-client-api.tls={{ matrix_dendrite_co
traefik.http.routers.matrix-dendrite-public-client-api.tls.certResolver={{ matrix_dendrite_container_labels_public_client_api_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Client-API (/_matrix) #
# #
############################################################
{% endif %}
{#
/Public Client-API (/_matrix)
#}
{#
Internal Client-API (/_matrix)
#}
{% if matrix_dendrite_container_labels_internal_client_api_enabled %}
############################################################
# #
# Internal Client-API (/_matrix) #
# #
############################################################
traefik.http.routers.matrix-dendrite-internal-client-api.rule={{ matrix_dendrite_container_labels_internal_client_api_traefik_rule }}
@ -82,16 +92,20 @@ traefik.http.routers.matrix-dendrite-internal-client-api.priority={{ matrix_dend
traefik.http.routers.matrix-dendrite-internal-client-api.service=matrix-dendrite
traefik.http.routers.matrix-dendrite-internal-client-api.entrypoints={{ matrix_dendrite_container_labels_internal_client_api_traefik_entrypoints }}
############################################################
# #
# /Internal Client-API (/_matrix) #
# #
############################################################
{% endif %}
{#
/Internal Client-API (/_matrix)
#}
{#
Public Synapse Admin API (/_synapse/admin)
#}
{% if matrix_dendrite_container_labels_public_client_synapse_admin_api_enabled %}
############################################################
# #
# Public Synapse Admin API (/_synapse/admin) #
# #
############################################################
traefik.http.routers.matrix-dendrite-public-client-synapse-admin-api.rule={{ matrix_dendrite_container_labels_public_client_synapse_admin_api_traefik_rule }}
@ -107,16 +121,20 @@ traefik.http.routers.matrix-dendrite-public-client-synapse-admin-api.tls={{ matr
traefik.http.routers.matrix-dendrite-public-client-synapse-admin-api.tls.certResolver={{ matrix_dendrite_container_labels_public_client_synapse_admin_api_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Synapse Admin API (/_synapse/admin) #
# #
############################################################
{% endif %}
{#
/Public Synapse Admin API (/_synapse/admin)
#}
{#
Public Dendrite Admin API (/_dendrite/admin)
#}
{% if matrix_dendrite_container_labels_public_client_dendrite_admin_api_enabled %}
############################################################
# #
# Public Dendrite Admin API (/_dendrite/admin) #
# #
############################################################
traefik.http.routers.matrix-dendrite-public-client-synapse-admin-api.rule={{ matrix_dendrite_container_labels_public_client_dendrite_admin_api_traefik_rule }}
@ -132,16 +150,20 @@ traefik.http.routers.matrix-dendrite-public-client-synapse-admin-api.tls={{ matr
traefik.http.routers.matrix-dendrite-public-client-synapse-admin-api.tls.certResolver={{ matrix_dendrite_container_labels_public_client_dendrite_admin_api_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Dendrite Admin API (/_dendrite/admin) #
# #
############################################################
{% endif %}
{#
/Public Dendrite Admin API (/_dendrite/admin)
#}
{#
Public Federation-API (/_matrix)
#}
{% if matrix_dendrite_container_labels_public_federation_api_enabled %}
############################################################
# #
# Public Federation-API (/_matrix) #
# #
############################################################
traefik.http.routers.matrix-dendrite-public-federation-api.rule={{ matrix_dendrite_container_labels_public_federation_api_traefik_rule }}
@ -157,16 +179,20 @@ traefik.http.routers.matrix-dendrite-public-federation-api.tls={{ matrix_dendrit
traefik.http.routers.matrix-dendrite-public-federation-api.tls.certResolver={{ matrix_dendrite_container_labels_public_federation_api_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Federation-API (/_matrix) #
# #
############################################################
{% endif %}
{#
/Public Federation-API (/_matrix)
#}
{#
Public Metrics
#}
{% if matrix_dendrite_container_labels_public_metrics_enabled %}
############################################################
# #
# Public Metrics #
# #
############################################################
{% set metrics_middlewares = [] %}
@ -195,10 +221,14 @@ traefik.http.routers.matrix-dendrite-metrics.tls={{ matrix_dendrite_container_la
{% if matrix_dendrite_container_labels_public_metrics_traefik_tls %}
traefik.http.routers.matrix-dendrite-metrics.tls.certResolver={{ matrix_dendrite_container_labels_public_metrics_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Metrics #
# #
############################################################
{% endif %}
{#
/Public Metrics
#}
{% endif %}

View File

@ -5,10 +5,14 @@ traefik.enable=true
traefik.docker.network={{ matrix_ldap_registration_proxy_container_labels_traefik_docker_network }}
{% endif %}
{#
Registration
#}
{% if matrix_ldap_registration_proxy_container_labels_public_endpoint_enabled %}
############################################################
# #
# Registration #
# #
############################################################
traefik.http.services.matrix-ldap-registration-proxy.loadbalancer.server.port={{ matrix_ldap_registration_listen_port }}
traefik.http.middlewares.matrix-ldap-registration-proxy-registration-endpoint-replacepath.replacepath.path=/register
@ -28,11 +32,13 @@ traefik.http.routers.matrix-ldap-registration-proxy-registration.tls={{ matrix_l
traefik.http.routers.matrix-ldap-registration-proxy-registration.tls.certResolver={{ matrix_ldap_registration_proxy_container_labels_public_endpoint_traefik_tls_certResolver }}
{% endif %}
traefik.http.services.matrix-ldap-registration-proxy.loadbalancer.server.port={{ matrix_ldap_registration_listen_port }}
############################################################
# #
# /Registration #
# #
############################################################
{% endif %}
{#
/Registration
#}
{% endif %}

View File

@ -7,10 +7,13 @@ traefik.docker.network={{ matrix_ma1sd_container_labels_traefik_docker_network }
traefik.http.services.matrix-ma1sd.loadbalancer.server.port={{ matrix_ma1sd_container_port }}
{#
Matrix Identity APIs (/_matrix/identity)
#}
{% if matrix_ma1sd_container_labels_matrix_identity_enabled %}
############################################################
# #
# Matrix Identity APIs (/_matrix/identity) #
# #
############################################################
traefik.http.routers.matrix-ma1sd-matrix-identity.rule={{ matrix_ma1sd_container_labels_matrix_identity_traefik_rule }}
{% if matrix_ma1sd_container_labels_matrix_identity_traefik_priority | int > 0 %}
@ -24,21 +27,26 @@ traefik.http.routers.matrix-ma1sd-matrix-identity.tls={{ matrix_ma1sd_container_
{% if matrix_ma1sd_container_labels_matrix_identity_traefik_tls %}
traefik.http.routers.matrix-ma1sd-matrix-identity.tls.certResolver={{ matrix_ma1sd_container_labels_matrix_identity_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Matrix Identity APIs (/_matrix/identity) #
# #
############################################################
{% endif %}
{#
/Matrix Identity APIs (/_matrix/identity)
#}
{#
Matrix Client user-directory search API endpoint (/_matrix/client/VERSION/user_directory/search)
#}
{% if matrix_ma1sd_container_labels_matrix_client_user_directory_search_enabled %}
{#
ma1sd only supports /_matrix/client/r0/user_directory/search,
while we potentially handle /_matrix/client/v3/user_directory/search as well,
so we need to transparently reroute.
#}
############################################################
# #
# Matrix Client user-directory search API endpoint #
# (/_matrix/client/VERSION/user_directory/search) #
# #
############################################################
# ma1sd only supports /_matrix/client/r0/user_directory/search
# while we potentially handle /_matrix/client/v3/user_directory/search as well,
# so we need to transparently reroute.
traefik.http.middlewares.matrix-ma1sd-matrix-client-user-directory-search-replacepath.replacepath.path=/_matrix/client/r0/user_directory/search
traefik.http.routers.matrix-ma1sd-matrix-client-user-directory-search.rule={{ matrix_ma1sd_container_labels_matrix_client_user_directory_search_traefik_rule }}
@ -56,21 +64,27 @@ traefik.http.routers.matrix-ma1sd-matrix-client-user-directory-search.tls={{ mat
{% if matrix_ma1sd_container_labels_matrix_client_user_directory_search_traefik_tls %}
traefik.http.routers.matrix-ma1sd-matrix-client-user-directory-search.tls.certResolver={{ matrix_ma1sd_container_labels_matrix_client_user_directory_search_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Matrix Client user-directory search API endpoint #
# (/_matrix/client/VERSION/user_directory/search) #
# #
############################################################
{% endif %}
{#
/Matrix Client user-directory search API endpoint (/_matrix/client/VERSION/user_directory/search)
#}
{#
Matrix Client 3pid registration API endpoint (/_matrix/client/VERSION/register/TYPE/requestToken)
#}
{% if matrix_ma1sd_container_labels_matrix_client_user_directory_search_enabled %}
{#
ma1sd only supports /_matrix/client/r0/user_directory/search,
while we potentially handle /_matrix/client/v3/user_directory/search as well,
so we need to transparently reroute.
#}
############################################################
# #
# Matrix Client 3pid registration API endpoint #
# (/_matrix/client/VERSION/register/TYPE/requestToken) #
# #
############################################################
# ma1sd only supports /_matrix/client/r0/register/TYPE/requestToken
# while we potentially handle /_matrix/client/v3/register/TYPE/requestToken as well,
# so we need to transparently reroute.
traefik.http.middlewares.matrix-ma1sd-matrix-client-3pid-registration-replacepathregex.replacepathregex.regex=^/_matrix/client/([^/]+)/register/([^/]+)/requestToken
traefik.http.middlewares.matrix-ma1sd-matrix-client-3pid-registration-replacepathregex.replacepathregex.replacement=/_matrix/client/r0/register/${2}/requestToken
@ -89,10 +103,15 @@ traefik.http.routers.matrix-ma1sd-matrix-client-3pid-registration.tls={{ matrix_
{% if matrix_ma1sd_container_labels_matrix_client_3pid_registration_traefik_tls %}
traefik.http.routers.matrix-ma1sd-matrix-client-3pid-registration.tls.certResolver={{ matrix_ma1sd_container_labels_matrix_client_3pid_registration_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Matrix Client 3pid registration API endpoint #
# (/_matrix/client/VERSION/register/TYPE/requestToken) #
# #
############################################################
{% endif %}
{#
/Matrix Client 3pid registration API endpoint (/_matrix/client/VERSION/register/TYPE/requestToken)
#}
{% endif %}

View File

@ -18,9 +18,11 @@ traefik.http.middlewares.matrix-media-repo-add-headers.headers.customrequesthead
# Matrix Client
{#
Public Media (/_matrix/media)
#}
############################################################
# #
# Public Media (/_matrix/media) #
# #
############################################################
traefik.http.routers.matrix-media-repo-public-media.rule={{ matrix_media_repo_container_labels_traefik_media_rule }}
@ -40,15 +42,20 @@ traefik.http.routers.matrix-media-repo-public-media.tls={{ matrix_media_repo_con
traefik.http.routers.matrix-media-repo-public-media.tls.certResolver={{ matrix_media_repo_container_labels_traefik_media_tls_certResolver }}
{% endif %}
{#
/Public Media (/_matrix/media)
#}
############################################################
# #
# /Public Media (/_matrix/media) #
# #
############################################################
{#
Internal Media (/_matrix/media)
#}
{% if matrix_media_repo_container_labels_traefik_internal_media_enabled %}
############################################################
# #
# Internal Media (/_matrix/media) #
# #
############################################################
traefik.http.routers.matrix-media-repo-internal-media.rule={{ matrix_media_repo_container_labels_traefik_internal_media_rule }}
{% if matrix_media_repo_container_labels_traefik_internal_media_priority | int > 0 %}
@ -62,16 +69,21 @@ traefik.http.routers.matrix-media-repo-internal-media.middlewares={{ middlewares
traefik.http.routers.matrix-media-repo-internal-media.service=matrix-media-repo
traefik.http.routers.matrix-media-repo-internal-media.entrypoints={{ matrix_media_repo_container_labels_traefik_internal_media_entrypoints }}
############################################################
# #
# /Internal Media (/_matrix/media) #
# #
############################################################
{% endif %}
{#
/Internal Media (/_matrix/media)
#}
{#
Public Client Logout (/_matrix/client/r0/logout, /_matrix/client/r0/logout/all)
#}
{% if matrix_media_repo_access_tokens_max_cache_time_seconds > 0 %}
############################################################
# #
# Public Client Logout #
# (/_matrix/client/r0/{logout,logout/all} #
# #
############################################################
traefik.http.routers.matrix-media-repo-public-logout.rule={{ matrix_media_repo_container_labels_traefik_logout_rule }}
@ -91,15 +103,20 @@ traefik.http.routers.matrix-media-repo-public-logout.tls={{ matrix_media_repo_co
traefik.http.routers.matrix-media-repo-public-logout.tls.certResolver={{ matrix_media_repo_container_labels_traefik_logout_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Client Logout #
# (/_matrix/client/r0/{logout,logout/all} #
# #
############################################################
{% endif %}
{#
/Public Client Logout (/_matrix/client/r0/logout, /_matrix/client/r0/logout/all)
#}
{#
Public Client Admin (/_matrix/client/r0/admin/*)
#}
############################################################
# #
# Public Client Admin (/_matrix/client/r0/admin/*) #
# #
############################################################
traefik.http.routers.matrix-media-repo-public-admin-federation.rule={{ matrix_media_repo_container_labels_traefik_admin_rule }}
@ -119,14 +136,19 @@ traefik.http.routers.matrix-media-repo-public-admin-federation.tls={{ matrix_med
traefik.http.routers.matrix-media-repo-public-admin-federation.tls.certResolver={{ matrix_media_repo_container_labels_traefik_admin_tls_certResolver }}
{% endif %}
{#
/Public Client Admin (/_matrix/client/r0/admin/*)
#}
############################################################
# #
# /Public Client Admin (/_matrix/client/r0/admin/*) #
# #
############################################################
{#
Public Client t2bot APIs (/_matrix/client/unstable/io.t2bot.media)
#}
############################################################
# #
# Public Client t2bot APIs #
# (/_matrix/client/unstable/io.t2bot.media) #
# #
############################################################
traefik.http.routers.matrix-media-repo-public-t2bot.rule={{ matrix_media_repo_container_labels_traefik_t2bot_rule }}
@ -146,17 +168,22 @@ traefik.http.routers.matrix-media-repo-public-t2bot.tls={{ matrix_media_repo_con
traefik.http.routers.matrix-media-repo-public-t2bot.tls.certResolver={{ matrix_media_repo_container_labels_traefik_t2bot_tls_certResolver }}
{% endif %}
{#
/Public Client t2bot APIs (/_matrix/client/unstable/io.t2bot.media)
#}
############################################################
# #
# /Public Client t2bot APIs #
# (/_matrix/client/unstable/io.t2bot.media) #
# #
############################################################
{% if matrix_media_repo_homeserver_federation_enabled %}
# Matrix Federation
{#
Public Federation Media (/_matrix/media)
#}
############################################################
# #
# Public Federation Media (/_matrix/media) #
# #
############################################################
traefik.http.routers.matrix-media-repo-public-media-federation.rule={{ matrix_media_repo_container_labels_traefik_media_federation_rule }}
@ -176,15 +203,20 @@ traefik.http.routers.matrix-media-repo-public-media-federation.tls={{ matrix_med
traefik.http.routers.matrix-media-repo-public-media-federation.tls.certResolver={{ matrix_media_repo_container_labels_traefik_media_federation_tls_certResolver }}
{% endif %}
{#
/Public Federation Media (/_matrix/media)
#}
############################################################
# #
# /Public Federation Media (/_matrix/media) #
# #
############################################################
{#
Public Federation Logout (/_matrix/client/r0/logout, /_matrix/client/r0/logout/all)
#}
{% if matrix_media_repo_access_tokens_max_cache_time_seconds > 0 %}
############################################################
# #
# Public Federation Logout #
# (/_matrix/client/r0/{logout,logout/all} #
# #
############################################################
traefik.http.routers.matrix-media-repo-public-logout-federation.rule={{ matrix_media_repo_container_labels_traefik_logout_federation_rule }}
@ -204,15 +236,20 @@ traefik.http.routers.matrix-media-repo-public-logout-federation.tls={{ matrix_me
traefik.http.routers.matrix-media-repo-public-logout-federation.tls.certResolver={{ matrix_media_repo_container_labels_traefik_logout_federation_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Federation Logout #
# (/_matrix/client/r0/{logout,logout/all} #
# #
############################################################
{% endif %}
{#
/Public Federation Logout (/_matrix/client/r0/logout, /_matrix/client/r0/logout/all)
#}
{#
Public Federation Admin (/_matrix/client/r0/admin/*)
#}
############################################################
# #
# Public Federation Admin (/_matrix/client/r0/admin/*) #
# #
############################################################
traefik.http.routers.matrix-media-repo-public-admin.rule={{ matrix_media_repo_container_labels_traefik_admin_federation_rule }}
@ -232,13 +269,19 @@ traefik.http.routers.matrix-media-repo-public-admin.tls={{ matrix_media_repo_con
traefik.http.routers.matrix-media-repo-public-admin.tls.certResolver={{ matrix_media_repo_container_labels_traefik_admin_federation_tls_certResolver }}
{% endif %}
{#
/Public Federation Admin (/_matrix/client/r0/admin/*)
#}
############################################################
# #
# /Public Federation Admin (/_matrix/client/r0/admin/*) #
# #
############################################################
{#
Public Federation t2bot APIs (/_matrix/client/unstable/io.t2bot.media)
#}
############################################################
# #
# Public Federation t2bot APIs #
# (/_matrix/client/unstable/io.t2bot.media) #
# #
############################################################
traefik.http.routers.matrix-media-repo-public-t2bot-federation.rule={{ matrix_media_repo_container_labels_traefik_t2bot_federation_rule }}
@ -258,12 +301,16 @@ traefik.http.routers.matrix-media-repo-public-t2bot-federation.tls={{ matrix_med
traefik.http.routers.matrix-media-repo-public-t2bot-federation.tls.certResolver={{ matrix_media_repo_container_labels_traefik_t2bot_federation_tls_certResolver }}
{% endif %}
{#
Public Federation t2bot APIs (/_matrix/client/unstable/io.t2bot.media)
#}
############################################################
# #
# /Public Federation t2bot APIs #
# (/_matrix/client/unstable/io.t2bot.media) #
# #
############################################################
{% endif %} {# end of matrix_media_repo_homeserver_federation_enabled if-check #}
{% endif %}
{% endif %} {# end of matrix_media_repo_container_labels_traefik_enabled if-check #}
{{ matrix_media_repo_container_labels_additional_labels }}

View File

@ -7,10 +7,12 @@ traefik.docker.network={{ matrix_registration_container_labels_traefik_docker_ne
traefik.http.services.matrix-registration.loadbalancer.server.port=5000
{#
Public (e.g. /matrix-registration)
#}
{% if matrix_registration_container_labels_public_endpoint_enabled %}
############################################################
# #
# Public (e.g. /matrix-registration) #
# #
############################################################
{% set middlewares = [] %}
@ -20,7 +22,7 @@ traefik.http.middlewares.matrix-registration-slashless-redirect-slashless.redire
{% set middlewares = middlewares + ['matrix-registration-slashless-redirect-slashless'] %}
{% endif %}
{# matrix-registration serves nothing at the root URL, so we redirect to /register instead. #}
# matrix-registration serves nothing at the root URL, so we redirect to /register instead.
traefik.http.middlewares.matrix-registration-slashless-redirect-root.redirectregex.regex=({{ matrix_registration_path_prefix | quote }}{{ '' if matrix_registration_path_prefix == '/' else '/' }})$
traefik.http.middlewares.matrix-registration-slashless-redirect-root.redirectregex.replacement=${1}register
{% set middlewares = middlewares + ['matrix-registration-slashless-redirect-root'] %}
@ -48,10 +50,13 @@ traefik.http.routers.matrix-registration-public.tls={{ matrix_registration_conta
traefik.http.routers.matrix-registration-public.tls.certResolver={{ matrix_registration_container_labels_public_endpoint_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public (e.g. /matrix-registration) #
# #
############################################################
{% endif %}
{#
/Public (e.g. /matrix-registration)
#}
{% endif %}

View File

@ -8,10 +8,12 @@ traefik.docker.network={{ matrix_static_files_container_labels_traefik_docker_ne
traefik.http.services.{{ matrix_static_files_identifier }}.loadbalancer.server.port={{ matrix_static_files_environment_variable_server_port }}
{#
Related to /.well-known/matrix on the matrix domain
#}
{% if matrix_static_files_container_labels_well_known_matrix_endpoint_enabled %}
############################################################
# #
# Related to /.well-known/matrix on the matrix domain #
# #
############################################################
{% set well_known_matrix_endpoint_middlewares = [] %}
@ -39,16 +41,21 @@ traefik.http.routers.{{ matrix_static_files_identifier }}-well-known.tls={{ matr
traefik.http.routers.{{ matrix_static_files_identifier }}-well-known.tls.certResolver={{ matrix_static_files_container_labels_well_known_matrix_endpoint_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Related to /.well-known/matrix on the matrix domain #
# #
############################################################
{% endif %}
{#
/Related to /.well-known/matrix on the matrix domain
#}
{#
Base domain serving
#}
{% if matrix_static_files_container_labels_base_domain_enabled %}
############################################################
# #
# Base domain serving #
# #
############################################################
traefik.http.routers.{{ matrix_static_files_identifier }}-base-domain.rule={{ matrix_static_files_container_labels_base_domain_traefik_rule }}
{% if matrix_static_files_container_labels_base_domain_traefik_priority | int > 0 %}
@ -63,10 +70,13 @@ traefik.http.routers.{{ matrix_static_files_identifier }}-base-domain.tls={{ mat
traefik.http.routers.{{ matrix_static_files_identifier }}-base-domain.tls.certResolver={{ matrix_static_files_container_labels_base_domain_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Base domain serving #
# #
############################################################
{% endif %}
{#
/Base domain serving
#}
{% endif %}

View File

@ -9,10 +9,12 @@ traefik.http.services.matrix-synapse-reverse-proxy-companion-client-api.loadbala
traefik.http.services.matrix-synapse-reverse-proxy-companion-federation-api.loadbalancer.server.port=8048
{#
Public Client-API (/_matrix)
#}
{% if matrix_synapse_reverse_proxy_companion_container_labels_public_client_api_enabled %}
############################################################
# #
# Public Client-API (/_matrix) #
# #
############################################################
traefik.http.routers.matrix-synapse-reverse-proxy-companion-public-client-api.rule={{ matrix_synapse_reverse_proxy_companion_container_labels_public_client_api_traefik_rule }}
@ -28,16 +30,20 @@ traefik.http.routers.matrix-synapse-reverse-proxy-companion-public-client-api.tl
traefik.http.routers.matrix-synapse-reverse-proxy-companion-public-client-api.tls.certResolver={{ matrix_synapse_reverse_proxy_companion_container_labels_public_client_api_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Client-API (/_matrix) #
# #
############################################################
{% endif %}
{#
/Public Client-API (/_matrix)
#}
{#
Internal Client-API (/_matrix)
#}
{% if matrix_synapse_reverse_proxy_companion_container_labels_internal_client_api_enabled %}
############################################################
# #
# Internal Client-API (/_matrix) #
# #
############################################################
traefik.http.routers.matrix-synapse-reverse-proxy-companion-internal-client-api.rule={{ matrix_synapse_reverse_proxy_companion_container_labels_internal_client_api_traefik_rule }}
@ -48,16 +54,20 @@ traefik.http.routers.matrix-synapse-reverse-proxy-companion-internal-client-api.
traefik.http.routers.matrix-synapse-reverse-proxy-companion-internal-client-api.service=matrix-synapse-reverse-proxy-companion-client-api
traefik.http.routers.matrix-synapse-reverse-proxy-companion-internal-client-api.entrypoints={{ matrix_synapse_reverse_proxy_companion_container_labels_internal_client_api_traefik_entrypoints }}
############################################################
# #
# /Internal Client-API (/_matrix) #
# #
############################################################
{% endif %}
{#
/Internal Client-API (/_matrix)
#}
{#
Public Synapse Admin API (/_synapse/client)
#}
{% if matrix_synapse_reverse_proxy_companion_container_labels_public_client_synapse_client_api_enabled %}
############################################################
# #
# Public Synapse Admin API (/_synapse/client) #
# #
############################################################
traefik.http.routers.matrix-synapse-reverse-proxy-companion-public-client-synapse-client-api.rule={{ matrix_synapse_reverse_proxy_companion_container_labels_public_client_synapse_client_api_traefik_rule }}
@ -73,16 +83,20 @@ traefik.http.routers.matrix-synapse-reverse-proxy-companion-public-client-synaps
traefik.http.routers.matrix-synapse-reverse-proxy-companion-public-client-synapse-client-api.tls.certResolver={{ matrix_synapse_reverse_proxy_companion_container_labels_public_client_synapse_client_api_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Synapse Admin API (/_synapse/client) #
# #
############################################################
{% endif %}
{#
/Public Synapse Admin API (/_synapse/client)
#}
{#
Public Synapse OIDC API (/_synapse/oidc)
#}
{% if matrix_synapse_reverse_proxy_companion_container_labels_public_client_synapse_oidc_api_enabled %}
############################################################
# #
# Public Synapse OIDC API (/_synapse/oidc) #
# #
############################################################
traefik.http.routers.matrix-synapse-reverse-proxy-companion-public-client-synapse-oidc-api.rule={{ matrix_synapse_reverse_proxy_companion_container_labels_public_client_synapse_oidc_api_traefik_rule }}
@ -98,16 +112,20 @@ traefik.http.routers.matrix-synapse-reverse-proxy-companion-public-client-synaps
traefik.http.routers.matrix-synapse-reverse-proxy-companion-public-client-synapse-oidc-api.tls.certResolver={{ matrix_synapse_reverse_proxy_companion_container_labels_public_client_synapse_oidc_api_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Synapse OIDC API (/_synapse/oidc) #
# #
############################################################
{% endif %}
{#
/Public Synapse OIDC API (/_synapse/oidc)
#}
{#
Public Synapse Admin API (/_synapse/admin)
#}
{% if matrix_synapse_reverse_proxy_companion_container_labels_public_client_synapse_admin_api_enabled %}
############################################################
# #
# Public Synapse Admin API (/_synapse/admin) #
# #
############################################################
traefik.http.routers.matrix-synapse-reverse-proxy-companion-public-client-synapse-admin-api.rule={{ matrix_synapse_reverse_proxy_companion_container_labels_public_client_synapse_admin_api_traefik_rule }}
@ -123,16 +141,20 @@ traefik.http.routers.matrix-synapse-reverse-proxy-companion-public-client-synaps
traefik.http.routers.matrix-synapse-reverse-proxy-companion-public-client-synapse-admin-api.tls.certResolver={{ matrix_synapse_reverse_proxy_companion_container_labels_public_client_synapse_admin_api_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Synapse Admin API (/_synapse/admin) #
# #
############################################################
{% endif %}
{#
/Public Synapse Admin API (/_synapse/admin)
#}
{#
Public Federation-API (/_matrix)
#}
{% if matrix_synapse_reverse_proxy_companion_container_labels_public_federation_api_enabled %}
############################################################
# #
# Public Federation-API (/_matrix) #
# #
############################################################
traefik.http.routers.matrix-synapse-reverse-proxy-companion-public-federation-api.rule={{ matrix_synapse_reverse_proxy_companion_container_labels_public_federation_api_traefik_rule }}
@ -148,10 +170,13 @@ traefik.http.routers.matrix-synapse-reverse-proxy-companion-public-federation-ap
traefik.http.routers.matrix-synapse-reverse-proxy-companion-public-federation-api.tls.certResolver={{ matrix_synapse_reverse_proxy_companion_container_labels_public_federation_api_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Federation-API (/_matrix) #
# #
############################################################
{% endif %}
{#
/Public Federation-API (/_matrix)
#}
{% endif %}

View File

@ -10,10 +10,12 @@ traefik.http.services.matrix-synapse-federation-api.loadbalancer.server.port={{
traefik.http.services.matrix-synapse-metrics.loadbalancer.server.port={{ matrix_synapse_metrics_port }}
{#
Public Root path (/)
#}
{% if matrix_synapse_container_labels_public_client_root_enabled %}
############################################################
# #
# Public Root path (/) #
# #
############################################################
{% set client_root_middlewares = [] %}
@ -42,26 +44,20 @@ traefik.http.routers.matrix-synapse-public-client-root.tls={{ matrix_synapse_con
traefik.http.routers.matrix-synapse-public-client-root.tls.certResolver={{ matrix_synapse_container_labels_public_client_root_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Root path (/) #
# #
############################################################
{% endif %}
{#
/Public Root path (/)
#}
{#
#########################################################################
# #
# Matrix-related labels #
# See: `matrix_synapse_container_labels_matrix_related_labels_enabled` #
# #
#########################################################################
#}
{% if matrix_synapse_container_labels_matrix_related_labels_enabled %}
{#
Public Client-API (/_matrix)
#}
{% if matrix_synapse_container_labels_public_client_api_enabled %}
############################################################
# #
# Public Client-API (/_matrix) #
# #
############################################################
traefik.http.routers.matrix-synapse-public-client-api.rule={{ matrix_synapse_container_labels_public_client_api_traefik_rule }}
@ -77,17 +73,21 @@ traefik.http.routers.matrix-synapse-public-client-api.tls={{ matrix_synapse_cont
traefik.http.routers.matrix-synapse-public-client-api.tls.certResolver={{ matrix_synapse_container_labels_public_client_api_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Client-API (/_matrix) #
# #
############################################################
{% endif %}
{#
/Public Client-API (/_matrix)
#}
{#
Internal Client-API (/_matrix)
#}
{% if matrix_synapse_container_labels_internal_client_api_enabled %}
############################################################
# #
# Internal Client-API (/_matrix) #
# #
############################################################
traefik.http.routers.matrix-synapse-internal-client-api.rule={{ matrix_synapse_container_labels_internal_client_api_traefik_rule }}
@ -98,16 +98,20 @@ traefik.http.routers.matrix-synapse-internal-client-api.priority={{ matrix_synap
traefik.http.routers.matrix-synapse-internal-client-api.service=matrix-synapse-client-api
traefik.http.routers.matrix-synapse-internal-client-api.entrypoints={{ matrix_synapse_container_labels_internal_client_api_traefik_entrypoints }}
############################################################
# #
# /Internal Client-API (/_matrix) #
# #
############################################################
{% endif %}
{#
/Internal Client-API (/_matrix)
#}
{#
Public Synapse Admin API (/_synapse/client)
#}
{% if matrix_synapse_container_labels_public_client_synapse_client_api_enabled %}
############################################################
# #
# Public Synapse Admin API (/_synapse/client) #
# #
############################################################
traefik.http.routers.matrix-synapse-public-client-synapse-client-api.rule={{ matrix_synapse_container_labels_public_client_synapse_client_api_traefik_rule }}
@ -123,16 +127,20 @@ traefik.http.routers.matrix-synapse-public-client-synapse-client-api.tls={{ matr
traefik.http.routers.matrix-synapse-public-client-synapse-client-api.tls.certResolver={{ matrix_synapse_container_labels_public_client_synapse_client_api_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Synapse Admin API (/_synapse/client) #
# #
############################################################
{% endif %}
{#
/Public Synapse Admin API (/_synapse/client)
#}
{#
Public Synapse OIDC API (/_synapse/oidc)
#}
{% if matrix_synapse_container_labels_public_client_synapse_oidc_api_enabled %}
############################################################
# #
# Public Synapse OIDC API (/_synapse/oidc) #
# #
############################################################
traefik.http.routers.matrix-synapse-public-client-synapse-oidc-api.rule={{ matrix_synapse_container_labels_public_client_synapse_oidc_api_traefik_rule }}
@ -148,16 +156,20 @@ traefik.http.routers.matrix-synapse-public-client-synapse-oidc-api.tls={{ matrix
traefik.http.routers.matrix-synapse-public-client-synapse-oidc-api.tls.certResolver={{ matrix_synapse_container_labels_public_client_synapse_oidc_api_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Synapse OIDC API (/_synapse/oidc) #
# #
############################################################
{% endif %}
{#
/Public Synapse OIDC API (/_synapse/oidc)
#}
{#
Public Synapse Admin API (/_synapse/admin)
#}
{% if matrix_synapse_container_labels_public_client_synapse_admin_api_enabled %}
############################################################
# #
# Public Synapse Admin API (/_synapse/admin) #
# #
############################################################
traefik.http.routers.matrix-synapse-public-client-synapse-admin-api.rule={{ matrix_synapse_container_labels_public_client_synapse_admin_api_traefik_rule }}
@ -173,16 +185,20 @@ traefik.http.routers.matrix-synapse-public-client-synapse-admin-api.tls={{ matri
traefik.http.routers.matrix-synapse-public-client-synapse-admin-api.tls.certResolver={{ matrix_synapse_container_labels_public_client_synapse_admin_api_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Synapse Admin API (/_synapse/admin) #
# #
############################################################
{% endif %}
{#
/Public Synapse Admin API (/_synapse/admin)
#}
{#
Public Federation-API (/_matrix)
#}
{% if matrix_synapse_container_labels_public_federation_api_enabled %}
############################################################
# #
# Public Federation-API (/_matrix) #
# #
############################################################
traefik.http.routers.matrix-synapse-public-federation-api.rule={{ matrix_synapse_container_labels_public_federation_api_traefik_rule }}
@ -198,26 +214,20 @@ traefik.http.routers.matrix-synapse-public-federation-api.tls={{ matrix_synapse_
traefik.http.routers.matrix-synapse-public-federation-api.tls.certResolver={{ matrix_synapse_container_labels_public_federation_api_traefik_tls_certResolver }}
{% endif %}
{% endif %}
{#
/Public Federation-API (/_matrix)
#}
{#
#########################################################################
# #
# /Matrix-related labels #
# See: `matrix_synapse_container_labels_matrix_related_labels_enabled` #
# #
#########################################################################
#}
############################################################
# #
# /Public Federation-API (/_matrix) #
# #
############################################################
{% endif %}
{#
Public Metrics (e.g. /metrics/synapse/main-process)
#}
{% if matrix_synapse_container_labels_public_metrics_enabled %}
############################################################
# #
# Public Metrics (e.g. /metrics/synapse/main-process) #
# #
############################################################
{% set metrics_middlewares = [] %}
@ -247,10 +257,12 @@ traefik.http.routers.matrix-synapse-metrics.tls={{ matrix_synapse_container_labe
traefik.http.routers.matrix-synapse-metrics.tls.certResolver={{ matrix_synapse_container_labels_public_metrics_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Public Metrics (e.g. /metrics/synapse/main-process) #
# #
############################################################
{% endif %}
{#
/Public Metrics (e.g. /metrics/synapse/main-process)
#}
{% endif %}