Matrix Docker Ansible eploy
Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 

206 Zeilen
9.4 KiB

  1. {% if matrix_dendrite_container_labels_traefik_enabled %}
  2. traefik.enable=true
  3. {% if matrix_dendrite_container_labels_traefik_docker_network %}
  4. traefik.docker.network={{ matrix_dendrite_container_labels_traefik_docker_network }}
  5. {% endif %}
  6. traefik.http.services.matrix-dendrite.loadbalancer.server.port={{ matrix_dendrite_http_bind_port }}
  7. {#
  8. Public Root path (/)
  9. #}
  10. {% if matrix_dendrite_container_labels_public_client_root_enabled %}
  11. {% set client_root_middlewares = [] %}
  12. {% if matrix_dendrite_container_labels_public_client_root_redirection_enabled %}
  13. {% set client_root_middlewares = client_root_middlewares + ['matrix-dendrite-client-root-redirect'] %}
  14. traefik.http.middlewares.matrix-dendrite-client-root-redirect.redirectregex.regex=(.*)
  15. traefik.http.middlewares.matrix-dendrite-client-root-redirect.redirectregex.replacement={{ matrix_dendrite_container_labels_public_client_root_redirection_url }}
  16. {% endif %}
  17. traefik.http.routers.matrix-dendrite-public-client-root.rule={{ matrix_dendrite_container_labels_public_client_root_traefik_rule }}
  18. traefik.http.routers.matrix-dendrite-public-client-root.middlewares={{ client_root_middlewares | join(',') }}
  19. {% if matrix_dendrite_container_labels_public_client_root_traefik_priority | int > 0 %}
  20. traefik.http.routers.matrix-dendrite-public-client-root.priority={{ matrix_dendrite_container_labels_public_client_root_traefik_priority }}
  21. {% endif %}
  22. traefik.http.routers.matrix-dendrite-public-client-root.service=matrix-dendrite
  23. traefik.http.routers.matrix-dendrite-public-client-root.entrypoints={{ matrix_dendrite_container_labels_public_client_root_traefik_entrypoints }}
  24. traefik.http.routers.matrix-dendrite-public-client-root.tls={{ matrix_dendrite_container_labels_public_client_root_traefik_tls | to_json }}
  25. {% if matrix_dendrite_container_labels_public_client_root_traefik_tls %}
  26. traefik.http.routers.matrix-dendrite-public-client-root.tls.certResolver={{ matrix_dendrite_container_labels_public_client_root_traefik_tls_certResolver }}
  27. {% endif %}
  28. {% endif %}
  29. {#
  30. /Public Root path (/)
  31. #}
  32. {#
  33. Public Client-API (/_matrix)
  34. #}
  35. {% if matrix_dendrite_container_labels_public_client_api_enabled %}
  36. traefik.http.routers.matrix-dendrite-public-client-api.rule={{ matrix_dendrite_container_labels_public_client_api_traefik_rule }}
  37. {% if matrix_dendrite_container_labels_public_client_api_traefik_priority | int > 0 %}
  38. traefik.http.routers.matrix-dendrite-public-client-api.priority={{ matrix_dendrite_container_labels_public_client_api_traefik_priority }}
  39. {% endif %}
  40. traefik.http.routers.matrix-dendrite-public-client-api.service=matrix-dendrite
  41. traefik.http.routers.matrix-dendrite-public-client-api.entrypoints={{ matrix_dendrite_container_labels_public_client_api_traefik_entrypoints }}
  42. traefik.http.routers.matrix-dendrite-public-client-api.tls={{ matrix_dendrite_container_labels_public_client_api_traefik_tls | to_json }}
  43. {% if matrix_dendrite_container_labels_public_client_api_traefik_tls %}
  44. traefik.http.routers.matrix-dendrite-public-client-api.tls.certResolver={{ matrix_dendrite_container_labels_public_client_api_traefik_tls_certResolver }}
  45. {% endif %}
  46. {% endif %}
  47. {#
  48. /Public Client-API (/_matrix)
  49. #}
  50. {#
  51. Internal Client-API (/_matrix)
  52. #}
  53. {% if matrix_dendrite_container_labels_internal_client_api_enabled %}
  54. traefik.http.routers.matrix-dendrite-internal-client-api.rule={{ matrix_dendrite_container_labels_internal_client_api_traefik_rule }}
  55. {% if matrix_dendrite_container_labels_internal_client_api_traefik_priority | int > 0 %}
  56. traefik.http.routers.matrix-dendrite-internal-client-api.priority={{ matrix_dendrite_container_labels_internal_client_api_traefik_priority }}
  57. {% endif %}
  58. traefik.http.routers.matrix-dendrite-internal-client-api.service=matrix-dendrite
  59. traefik.http.routers.matrix-dendrite-internal-client-api.entrypoints={{ matrix_dendrite_container_labels_internal_client_api_traefik_entrypoints }}
  60. {% endif %}
  61. {#
  62. /Internal Client-API (/_matrix)
  63. #}
  64. {#
  65. Public Synapse Admin API (/_synapse/admin)
  66. #}
  67. {% if matrix_dendrite_container_labels_public_client_synapse_admin_api_enabled %}
  68. traefik.http.routers.matrix-dendrite-public-client-synapse-admin-api.rule={{ matrix_dendrite_container_labels_public_client_synapse_admin_api_traefik_rule }}
  69. {% if matrix_dendrite_container_labels_public_client_synapse_admin_api_traefik_priority | int > 0 %}
  70. traefik.http.routers.matrix-dendrite-public-client-synapse-admin-api.priority={{ matrix_dendrite_container_labels_public_client_synapse_admin_api_traefik_priority }}
  71. {% endif %}
  72. traefik.http.routers.matrix-dendrite-public-client-synapse-admin-api.service=matrix-dendrite
  73. traefik.http.routers.matrix-dendrite-public-client-synapse-admin-api.entrypoints={{ matrix_dendrite_container_labels_public_client_synapse_admin_api_traefik_entrypoints }}
  74. traefik.http.routers.matrix-dendrite-public-client-synapse-admin-api.tls={{ matrix_dendrite_container_labels_public_client_synapse_admin_api_traefik_tls | to_json }}
  75. {% if matrix_dendrite_container_labels_public_client_synapse_admin_api_traefik_tls %}
  76. traefik.http.routers.matrix-dendrite-public-client-synapse-admin-api.tls.certResolver={{ matrix_dendrite_container_labels_public_client_synapse_admin_api_traefik_tls_certResolver }}
  77. {% endif %}
  78. {% endif %}
  79. {#
  80. /Public Synapse Admin API (/_synapse/admin)
  81. #}
  82. {#
  83. Public Dendrite Admin API (/_dendrite/admin)
  84. #}
  85. {% if matrix_dendrite_container_labels_public_client_dendrite_admin_api_enabled %}
  86. traefik.http.routers.matrix-dendrite-public-client-synapse-admin-api.rule={{ matrix_dendrite_container_labels_public_client_dendrite_admin_api_traefik_rule }}
  87. {% if matrix_dendrite_container_labels_public_client_dendrite_admin_api_traefik_priority | int > 0 %}
  88. traefik.http.routers.matrix-dendrite-public-client-synapse-admin-api.priority={{ matrix_dendrite_container_labels_public_client_dendrite_admin_api_traefik_priority }}
  89. {% endif %}
  90. traefik.http.routers.matrix-dendrite-public-client-synapse-admin-api.service=matrix-dendrite
  91. traefik.http.routers.matrix-dendrite-public-client-synapse-admin-api.entrypoints={{ matrix_dendrite_container_labels_public_client_dendrite_admin_api_traefik_entrypoints }}
  92. traefik.http.routers.matrix-dendrite-public-client-synapse-admin-api.tls={{ matrix_dendrite_container_labels_public_client_dendrite_admin_api_traefik_tls | to_json }}
  93. {% if matrix_dendrite_container_labels_public_client_dendrite_admin_api_traefik_tls %}
  94. traefik.http.routers.matrix-dendrite-public-client-synapse-admin-api.tls.certResolver={{ matrix_dendrite_container_labels_public_client_dendrite_admin_api_traefik_tls_certResolver }}
  95. {% endif %}
  96. {% endif %}
  97. {#
  98. /Public Dendrite Admin API (/_dendrite/admin)
  99. #}
  100. {#
  101. Public Federation-API (/_matrix)
  102. #}
  103. {% if matrix_dendrite_container_labels_public_federation_api_enabled %}
  104. traefik.http.routers.matrix-dendrite-public-federation-api.rule={{ matrix_dendrite_container_labels_public_federation_api_traefik_rule }}
  105. {% if matrix_dendrite_container_labels_public_federation_api_traefik_priority | int > 0 %}
  106. traefik.http.routers.matrix-dendrite-public-federation-api.priority={{ matrix_dendrite_container_labels_public_federation_api_traefik_priority }}
  107. {% endif %}
  108. traefik.http.routers.matrix-dendrite-public-federation-api.service=matrix-dendrite
  109. traefik.http.routers.matrix-dendrite-public-federation-api.entrypoints={{ matrix_dendrite_container_labels_public_federation_api_traefik_entrypoints }}
  110. traefik.http.routers.matrix-dendrite-public-federation-api.tls={{ matrix_dendrite_container_labels_public_federation_api_traefik_tls | to_json }}
  111. {% if matrix_dendrite_container_labels_public_federation_api_traefik_tls %}
  112. traefik.http.routers.matrix-dendrite-public-federation-api.tls.certResolver={{ matrix_dendrite_container_labels_public_federation_api_traefik_tls_certResolver }}
  113. {% endif %}
  114. {% endif %}
  115. {#
  116. /Public Federation-API (/_matrix)
  117. #}
  118. {#
  119. Public Metrics
  120. #}
  121. {% if matrix_dendrite_container_labels_public_metrics_enabled %}
  122. {% set metrics_middlewares = [] %}
  123. {% if matrix_dendrite_container_labels_public_metrics_middleware_basic_auth_enabled %}
  124. {% set metrics_middlewares = metrics_middlewares + ['matrix-dendrite-metrics-basic-auth'] %}
  125. traefik.http.middlewares.matrix-dendrite-metrics-basic-auth.basicauth.users={{ matrix_dendrite_container_labels_public_metrics_middleware_basic_auth_users }}
  126. {% endif %}
  127. {% set metrics_middlewares = metrics_middlewares + ['matrix-dendrite-metrics-replacepath'] %}
  128. traefik.http.middlewares.matrix-dendrite-metrics-replacepath.replacepath.path=/metrics
  129. traefik.http.routers.matrix-dendrite-metrics.rule={{ matrix_dendrite_container_labels_public_metrics_traefik_rule }}
  130. {% if metrics_middlewares | length > 0 %}
  131. traefik.http.routers.matrix-dendrite-metrics.middlewares={{ metrics_middlewares | join(',') }}
  132. {% endif %}
  133. {% if matrix_dendrite_container_labels_public_metrics_traefik_priority | int > 0 %}
  134. traefik.http.routers.matrix-dendrite-metrics.priority={{ matrix_dendrite_container_labels_public_metrics_traefik_priority }}
  135. {% endif %}
  136. traefik.http.routers.matrix-dendrite-metrics.service=matrix-dendrite
  137. traefik.http.routers.matrix-dendrite-metrics.entrypoints={{ matrix_dendrite_container_labels_public_metrics_traefik_entrypoints }}
  138. traefik.http.routers.matrix-dendrite-metrics.tls={{ matrix_dendrite_container_labels_public_metrics_traefik_tls | to_json }}
  139. {% if matrix_dendrite_container_labels_public_metrics_traefik_tls %}
  140. traefik.http.routers.matrix-dendrite-metrics.tls.certResolver={{ matrix_dendrite_container_labels_public_metrics_traefik_tls_certResolver }}
  141. {% endif %}
  142. {% endif %}
  143. {#
  144. /Public Metrics
  145. #}
  146. {% endif %}
  147. {{ matrix_dendrite_container_labels_additional_labels }}