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.
 
 

306 Zeilen
18 KiB

  1. # SPDX-FileCopyrightText: 2025 MDAD project contributors
  2. # SPDX-FileCopyrightText: 2025 Slavi Pantaleev
  3. #
  4. # SPDX-License-Identifier: AGPL-3.0-or-later
  5. ---
  6. # continuwuity is a continuation of conduwuit (https://conduwuit.puppyirl.gay/).
  7. # Project source code URL: https://forgejo.ellis.link/continuwuation/continuwuity/
  8. # See: https://continuwuity.org/
  9. matrix_continuwuity_enabled: true
  10. matrix_continuwuity_hostname: ''
  11. # renovate: datasource=docker depName=forgejo.ellis.link/continuwuation/continuwuity
  12. matrix_continuwuity_version: v0.5.7
  13. matrix_continuwuity_container_image: "{{ matrix_continuwuity_container_image_registry_prefix }}/continuwuation/continuwuity:{{ matrix_continuwuity_container_image_tag }}"
  14. matrix_continuwuity_container_image_tag: "{{ matrix_continuwuity_version }}"
  15. matrix_continuwuity_container_image_force_pull: "{{ matrix_continuwuity_container_image.endswith(':latest') }}"
  16. matrix_continuwuity_container_image_registry_prefix: "{{ matrix_continuwuity_container_image_registry_prefix_upstream }}"
  17. matrix_continuwuity_container_image_registry_prefix_upstream: "{{ matrix_continuwuity_container_image_registry_prefix_upstream_default }}"
  18. matrix_continuwuity_container_image_registry_prefix_upstream_default: forgejo.ellis.link
  19. matrix_continuwuity_base_path: "{{ matrix_base_data_path }}/continuwuity"
  20. matrix_continuwuity_config_path: "{{ matrix_continuwuity_base_path }}/config"
  21. matrix_continuwuity_data_path: "{{ matrix_continuwuity_base_path }}/data"
  22. matrix_continuwuity_config_port_number: 6167
  23. matrix_continuwuity_tmp_directory_size_mb: 500
  24. # List of systemd services that matrix-continuwuity.service depends on
  25. matrix_continuwuity_systemd_required_services_list: "{{ matrix_continuwuity_systemd_required_services_list_default + matrix_continuwuity_systemd_required_services_list_auto + matrix_continuwuity_systemd_required_services_list_custom }}"
  26. matrix_continuwuity_systemd_required_services_list_default: "{{ [devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [] }}"
  27. matrix_continuwuity_systemd_required_services_list_auto: []
  28. matrix_continuwuity_systemd_required_services_list_custom: []
  29. # List of systemd services that matrix-continuwuity.service wants
  30. matrix_continuwuity_systemd_wanted_services_list: "{{ matrix_continuwuity_systemd_wanted_services_list_default + matrix_continuwuity_systemd_wanted_services_list_auto + matrix_continuwuity_systemd_wanted_services_list_custom }}"
  31. matrix_continuwuity_systemd_wanted_services_list_default: []
  32. matrix_continuwuity_systemd_wanted_services_list_auto: []
  33. matrix_continuwuity_systemd_wanted_services_list_custom: []
  34. # Controls how long to sleep for after starting the matrix-synapse container.
  35. #
  36. # Delaying, so that the homeserver can manage to fully start and various services
  37. # that depend on it (`matrix_continuwuity_systemd_required_services_list` and `matrix_continuwuity_systemd_wanted_services_list`)
  38. # may only start after the homeserver is up and running.
  39. #
  40. # This can be set to 0 to remove the delay.
  41. matrix_continuwuity_systemd_service_post_start_delay_seconds: 3
  42. # The base container network. It will be auto-created by this role if it doesn't exist already.
  43. matrix_continuwuity_container_network: ""
  44. # A list of additional container networks that the container would be connected to.
  45. # The role does not create these networks, so make sure they already exist.
  46. # Use this to expose this container to another reverse proxy, which runs in a different container network.
  47. matrix_continuwuity_container_additional_networks: "{{ matrix_continuwuity_container_additional_networks_auto + matrix_continuwuity_container_additional_networks_custom }}"
  48. matrix_continuwuity_container_additional_networks_auto: []
  49. matrix_continuwuity_container_additional_networks_custom: []
  50. # matrix_continuwuity_container_labels_traefik_enabled controls whether labels to assist a Traefik reverse-proxy will be attached to the container.
  51. # See `../templates/labels.j2` for details.
  52. #
  53. # To inject your own other container labels, see `matrix_continuwuity_container_labels_additional_labels`.
  54. matrix_continuwuity_container_labels_traefik_enabled: true
  55. matrix_continuwuity_container_labels_traefik_docker_network: "{{ matrix_continuwuity_container_network }}"
  56. matrix_continuwuity_container_labels_traefik_entrypoints: web-secure
  57. matrix_continuwuity_container_labels_traefik_tls_certResolver: default # noqa var-naming
  58. # Controls whether labels will be added for handling the root (/) path on a public Traefik entrypoint.
  59. matrix_continuwuity_container_labels_public_client_root_enabled: true
  60. matrix_continuwuity_container_labels_public_client_root_traefik_hostname: "{{ matrix_continuwuity_hostname }}"
  61. matrix_continuwuity_container_labels_public_client_root_traefik_rule: "Host(`{{ matrix_continuwuity_container_labels_public_client_root_traefik_hostname }}`) && Path(`/`)"
  62. matrix_continuwuity_container_labels_public_client_root_traefik_priority: 0
  63. matrix_continuwuity_container_labels_public_client_root_traefik_entrypoints: "{{ matrix_continuwuity_container_labels_traefik_entrypoints }}"
  64. matrix_continuwuity_container_labels_public_client_root_traefik_tls: "{{ matrix_continuwuity_container_labels_public_client_root_traefik_entrypoints != 'web' }}"
  65. matrix_continuwuity_container_labels_public_client_root_traefik_tls_certResolver: "{{ matrix_continuwuity_container_labels_traefik_tls_certResolver }}" # noqa var-naming
  66. matrix_continuwuity_container_labels_public_client_root_redirection_enabled: false
  67. matrix_continuwuity_container_labels_public_client_root_redirection_url: ""
  68. # Controls whether labels will be added that expose the Client-Server API on a public Traefik entrypoint.
  69. matrix_continuwuity_container_labels_public_client_api_enabled: true
  70. matrix_continuwuity_container_labels_public_client_api_traefik_hostname: "{{ matrix_continuwuity_hostname }}"
  71. matrix_continuwuity_container_labels_public_client_api_traefik_path_prefix: /_matrix
  72. matrix_continuwuity_container_labels_public_client_api_traefik_rule: "Host(`{{ matrix_continuwuity_container_labels_public_client_api_traefik_hostname }}`) && PathPrefix(`{{ matrix_continuwuity_container_labels_public_client_api_traefik_path_prefix }}`)"
  73. matrix_continuwuity_container_labels_public_client_api_traefik_priority: 0
  74. matrix_continuwuity_container_labels_public_client_api_traefik_entrypoints: "{{ matrix_continuwuity_container_labels_traefik_entrypoints }}"
  75. matrix_continuwuity_container_labels_public_client_api_traefik_tls: "{{ matrix_continuwuity_container_labels_public_client_api_traefik_entrypoints != 'web' }}"
  76. matrix_continuwuity_container_labels_public_client_api_traefik_tls_certResolver: "{{ matrix_continuwuity_container_labels_traefik_tls_certResolver }}" # noqa var-naming
  77. # Controls whether labels will be added that expose the Client-Server API on the internal Traefik entrypoint.
  78. # This is similar to `matrix_continuwuity_container_labels_public_client_api_enabled`, but the entrypoint and intent is different.
  79. matrix_continuwuity_container_labels_internal_client_api_enabled: false
  80. matrix_continuwuity_container_labels_internal_client_api_traefik_path_prefix: "{{ matrix_continuwuity_container_labels_public_client_api_traefik_path_prefix }}"
  81. matrix_continuwuity_container_labels_internal_client_api_traefik_rule: "PathPrefix(`{{ matrix_continuwuity_container_labels_internal_client_api_traefik_path_prefix }}`)"
  82. matrix_continuwuity_container_labels_internal_client_api_traefik_priority: "{{ matrix_continuwuity_container_labels_public_client_api_traefik_priority }}"
  83. matrix_continuwuity_container_labels_internal_client_api_traefik_entrypoints: ""
  84. # Controls whether labels will be added that expose the Server-Server API (Federation API) on a public Traefik entrypoint.
  85. matrix_continuwuity_container_labels_public_federation_api_enabled: "{{ matrix_continuwuity_config_allow_federation }}"
  86. matrix_continuwuity_container_labels_public_federation_api_traefik_hostname: "{{ matrix_continuwuity_hostname }}"
  87. matrix_continuwuity_container_labels_public_federation_api_traefik_path_prefix: /_matrix
  88. matrix_continuwuity_container_labels_public_federation_api_traefik_rule: "Host(`{{ matrix_continuwuity_container_labels_public_federation_api_traefik_hostname }}`) && PathPrefix(`{{ matrix_continuwuity_container_labels_public_federation_api_traefik_path_prefix }}`)"
  89. matrix_continuwuity_container_labels_public_federation_api_traefik_priority: 0
  90. matrix_continuwuity_container_labels_public_federation_api_traefik_entrypoints: ''
  91. # TLS is force-enabled here, because the spec (https://spec.matrix.org/v1.9/server-server-api/#tls) says that the federation API must use HTTPS.
  92. matrix_continuwuity_container_labels_public_federation_api_traefik_tls: true
  93. matrix_continuwuity_container_labels_public_federation_api_traefik_tls_certResolver: "{{ matrix_continuwuity_container_labels_traefik_tls_certResolver }}" # noqa var-naming
  94. # Controls whether labels will be added that expose the `/_continuwuity` path prefix on a public Traefik entrypoint.
  95. matrix_continuwuity_container_labels_public_continuwuity_api_enabled: true
  96. matrix_continuwuity_container_labels_public_continuwuity_api_traefik_hostname: "{{ matrix_continuwuity_hostname }}"
  97. matrix_continuwuity_container_labels_public_continuwuity_api_traefik_path_prefix: /_continuwuity
  98. matrix_continuwuity_container_labels_public_continuwuity_api_traefik_rule: "Host(`{{ matrix_continuwuity_container_labels_public_continuwuity_api_traefik_hostname }}`) && PathPrefix(`{{ matrix_continuwuity_container_labels_public_continuwuity_api_traefik_path_prefix }}`)"
  99. matrix_continuwuity_container_labels_public_continuwuity_api_traefik_priority: 0
  100. matrix_continuwuity_container_labels_public_continuwuity_api_traefik_entrypoints: "{{ matrix_continuwuity_container_labels_traefik_entrypoints }}"
  101. matrix_continuwuity_container_labels_public_continuwuity_api_traefik_tls: "{{ matrix_continuwuity_container_labels_public_continuwuity_api_traefik_entrypoints != 'web' }}"
  102. matrix_continuwuity_container_labels_public_continuwuity_api_traefik_tls_certResolver: "{{ matrix_continuwuity_container_labels_traefik_tls_certResolver }}" # noqa var-naming
  103. # matrix_continuwuity_container_labels_additional_labels contains a multiline string with additional labels to add to the container label file.
  104. # See `../templates/labels.j2` for details.
  105. #
  106. # Example:
  107. # matrix_continuwuity_container_labels_additional_labels: |
  108. # my.label=1
  109. # another.label="here"
  110. matrix_continuwuity_container_labels_additional_labels: ''
  111. # Extra arguments for the Docker container
  112. matrix_continuwuity_container_extra_arguments: []
  113. # Specifies which template files to use when configuring continuwuity.
  114. # If you'd like to have your own different configuration, feel free to copy and paste
  115. # the original files into your inventory (e.g. in `inventory/host_vars/matrix.example.com/`)
  116. # and then change the specific host's `vars.yml` file like this:
  117. # matrix_continuwuity_template_continuwuity_config: "{{ playbook_dir }}/inventory/host_vars/matrix.example.com/continuwuity.toml.j2"
  118. matrix_continuwuity_template_continuwuity_config: "{{ role_path }}/templates/continuwuity.toml.j2"
  119. # Max size for uploads, in bytes
  120. matrix_continuwuity_config_server_name: "{{ matrix_domain }}"
  121. # Max size for uploads, in bytes
  122. matrix_continuwuity_config_max_request_size: 20_000_000
  123. # Enables registration. If set to false, no users can register on this server.
  124. matrix_continuwuity_config_allow_registration: false
  125. # Controls if newly registered users are automatically suspended, requiring admin approval.
  126. matrix_continuwuity_config_suspend_on_register: false
  127. # Controls the `yes_i_am_very_very_sure_i_want_an_open_registration_server_prone_to_abuse` setting.
  128. # This is only used when `matrix_continuwuity_config_allow_registration` is set to true and no registration token is configured.
  129. matrix_continuwuity_config_yes_i_am_very_very_sure_i_want_an_open_registration_server_prone_to_abuse: false
  130. # Controls the `registration_token` setting.
  131. # When registration is enabled (`matrix_continuwuity_config_allow_registration`) you:
  132. # - either need to set a token to protect registration from abuse
  133. # - or you need to enable the `yes_i_am_very_very_sure_i_want_an_open_registration_server_prone_to_abuse` setting
  134. # (see `matrix_continuwuity_config_yes_i_am_very_very_sure_i_want_an_open_registration_server_prone_to_abuse`),
  135. # to allow registration without any form of 2nd-step.
  136. matrix_continuwuity_config_registration_token: ''
  137. # Controls the `new_user_displayname_suffix` setting.
  138. # This is the suffix that will be added to the displayname of new users.
  139. # Upstream defaults this to "🏳️‍⚧️", but we keep this consistent across all homeserver implementations and do not enable a suffix.
  140. matrix_continuwuity_config_new_user_displayname_suffix: ""
  141. # Controls the `allow_announcements_check` setting.
  142. matrix_continuwuity_config_allow_announcements_check: true
  143. # Controls the `emergency_password` setting.
  144. matrix_continuwuity_config_emergency_password: ''
  145. # Controls the `matrix_continuwuity_trusted_servers`` setting.
  146. matrix_continuwuity_config_trusted_servers:
  147. - "matrix.org"
  148. # Controls the `matrix_continuwuity_config_log` setting.
  149. matrix_continuwuity_config_log: "info,state_res=warn,rocket=off,_=off,sled=off"
  150. # TURN integration.
  151. # See: https://continuwuity.org/turn
  152. matrix_continuwuity_config_turn_uris: []
  153. matrix_continuwuity_config_turn_secret: ''
  154. matrix_continuwuity_config_turn_username: ''
  155. matrix_continuwuity_config_turn_password: ''
  156. # Controls whether the self-check feature should validate SSL certificates.
  157. matrix_continuwuity_self_check_validate_certificates: true
  158. # If set, registration will require Google ReCAPTCHA verification.
  159. matrix_continuwuity_config_recaptcha_site_key: ''
  160. matrix_continuwuity_config_recaptcha_private_site_key: ''
  161. # Controls whether encrypted rooms and events are allowed.
  162. matrix_continuwuity_config_allow_encryption: true
  163. # Controls whether standard users can create new rooms.
  164. # Appservices and admins are always allowed to create new rooms.
  165. matrix_continuwuity_config_allow_room_creation: true
  166. # Controls the default room version continuwuity will create rooms with.
  167. # Per spec, room version '12' is the default (According to spec release 1.18).
  168. matrix_continuwuity_config_default_room_version: '12'
  169. # List/vector of room IDs or room aliases that continuwuity will make
  170. # newly registered users join. The rooms specified must be rooms that you
  171. # have joined at least once on the server, and must be public.
  172. #
  173. # example: ["#continuwuity:continuwuity.org",
  174. # "!main-1:continuwuity.org"]
  175. #
  176. matrix_continuwuity_config_auto_join_rooms: []
  177. # Forces users to always forget rooms they have left (MSC4267).
  178. matrix_continuwuity_config_forget_forced_upon_leave: false
  179. # Controls server (de)federation settings.
  180. matrix_continuwuity_config_allow_federation: true
  181. matrix_continuwuity_config_allowed_remote_server_names: []
  182. matrix_continuwuity_config_forbidden_remote_server_names: []
  183. matrix_continuwuity_config_forbidden_remote_room_directory_server_names: []
  184. matrix_continuwuity_config_prevent_media_downloads_from: []
  185. matrix_continuwuity_config_ignore_messages_from_server_names: []
  186. # Allow outgoing presence updates/requests.
  187. #
  188. # Note that outgoing presence is very heavy on the CPU and network, and
  189. # will typically cause extreme strain and slowdowns for no real benefit.
  190. # There are only a few clients that even implement presence, so you
  191. # probably don't want to enable this.
  192. matrix_continuwuity_config_allow_outgoing_presence: false
  193. # Controls MatrixRTC foci served via `/_matrix/client/v1/rtc/transports`
  194. # and `/_matrix/client/unstable/org.matrix.msc4143/rtc/transports` (MSC4143)
  195. matrix_continuwuity_config_rtc_foci: "{{ matrix_continuwuity_config_rtc_foci_auto + matrix_continuwuity_config_rtc_foci_custom }}"
  196. matrix_continuwuity_config_rtc_foci_auto: |-
  197. {{
  198. (
  199. [{'type': 'livekit', 'livekit_service_url': matrix_continuwuity_config_rtc_foci_livekit_url}] if matrix_continuwuity_config_rtc_foci_livekit_url != '' else []
  200. )
  201. }}
  202. matrix_continuwuity_config_rtc_foci_custom: []
  203. # Controls MatrixRTC Livekit URL auto-added to `matrix_continuwuity_config_rtc_foci`.
  204. #
  205. # This is set automatically if you are using the playbook MatrixRTC stack.
  206. matrix_continuwuity_config_rtc_foci_livekit_url: ''
  207. # Controls the `url_preview_domain_contains_allowlist` setting.
  208. matrix_continuwuity_config_url_preview_domain_contains_allowlist: []
  209. # Controls the `url_preview_domain_explicit_allowlist` setting.
  210. matrix_continuwuity_config_url_preview_domain_explicit_allowlist: []
  211. # Controls the `url_preview_check_root_domain` setting.
  212. matrix_continuwuity_config_url_preview_check_root_domain: false
  213. # Controls the value of `global.well_known.client`.
  214. matrix_continuwuity_config_well_known_client: ''
  215. # Controls whether SMTP features will be enabled
  216. # (such as setting the server's SMTP connection URL,
  217. # enabling self-service password resets via email,
  218. # requiring email for registration, etc.)
  219. matrix_continuwuity_config_smtp_enabled: false
  220. # Controls the value of `global.smtp.connection_uri` (if any).
  221. # Must be set to a non-empty value
  222. # together with `matrix_continuwuity_config_smtp_sender` to have effect.
  223. matrix_continuwuity_config_smtp_connection_uri: ''
  224. # Controls the value of `global.smtp.sender` (if any).
  225. # Must be set to a non-empty value
  226. # together with `matrix_continuwuity_config_smtp_connection_uri` to have effect.
  227. matrix_continuwuity_config_smtp_sender: ''
  228. # Controls the `global.smtp.require_email_for_registration` setting.
  229. matrix_continuwuity_config_smtp_require_email_for_registration: false
  230. # Controls the `global.smtp.require_email_for_token_registration ` setting.
  231. matrix_continuwuity_config_smtp_require_email_for_token_registration: false
  232. # Additional environment variables to pass to the container.
  233. #
  234. # Environment variables take priority over settings in the configuration file.
  235. #
  236. # Example:
  237. # matrix_continuwuity_environment_variables_extension: |
  238. # CONTINUWUITY_MAX_REQUEST_SIZE=50000000
  239. # CONTINUWUITY_REQUEST_TIMEOUT=60
  240. matrix_continuwuity_environment_variables_extension: ''
  241. # matrix_continuwuity_restart_necessary controls whether the service
  242. # will be restarted (when true) or merely started (when false) by the
  243. # systemd service manager role (when conditional restart is enabled).
  244. #
  245. # This value is automatically computed during installation based on whether
  246. # any configuration files, the systemd service file, or the container image changed.
  247. # The default of `false` means "no restart needed" — appropriate when the role's
  248. # installation tasks haven't run (e.g., due to --tags skipping them).
  249. matrix_continuwuity_restart_necessary: false