Matrix Docker Ansible eploy
Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.
 
 

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