mirror of
https://github.com/spantaleev/matrix-docker-ansible-deploy.git
synced 2024-11-10 20:57:41 +01:00
fa76128fd8
This supersedes/fixes-up this Pull Request: https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/719 The Jitsi Web and JVB containers now (in build 5142) always start by bulding their own default configuration (`config.js` and `sip-communicator.properties`, respectively). The fact that we were generating these files ourselves was no longer of use, because our configuration was thrown away in favor of the one created by the containers on startup. With this commit, we're completely redoing things. We no longer generate these configuration files. We try to pass the proper environment variables, so that Jitsi services can generate the configuration files themselves. Besides that, we try to use the "custom configuration" mechanism provided by Jitsi Web and Jitsi JVB (`custom-config.js` and `custom-sip-communicator.properties`, respectively), so that we and our users can inject additional configuration. Some configuration options we had are gone now. Others are no longer controllable via variables and need to be injected using the `_config_extension` variables that we provide. The validation logic that is part of the role should take care to inform people about how to upgrade (if they're using some custom configuration, which needs special care now). Most users should not have to do anything special though.
250 lines
12 KiB
YAML
250 lines
12 KiB
YAML
matrix_jitsi_enabled: true
|
|
|
|
matrix_jitsi_base_path: "{{ matrix_base_data_path }}/jitsi"
|
|
|
|
matrix_jitsi_enable_auth: false
|
|
matrix_jitsi_enable_guests: false
|
|
matrix_jitsi_enable_recording: true
|
|
matrix_jitsi_enable_transcriptions: true
|
|
matrix_jitsi_enable_p2p: true
|
|
|
|
# Authentication type, must be one of internal, jwt or ldap. Currently only
|
|
# internal and ldap are supported by this playbook.
|
|
matrix_jitsi_auth_type: internal
|
|
|
|
# Configuration options for LDAP authentication. For details see upstream:
|
|
# https://github.com/jitsi/docker-jitsi-meet#authentication-using-ldap.
|
|
# Defaults are taken from:
|
|
# https://github.com/jitsi/docker-jitsi-meet/blob/master/prosody/rootfs/defaults/saslauthd.conf
|
|
matrix_jitsi_ldap_url: ""
|
|
matrix_jitsi_ldap_base: ""
|
|
matrix_jitsi_ldap_binddn: ""
|
|
matrix_jitsi_ldap_bindpw: ""
|
|
matrix_jitsi_ldap_filter: "uid=%u"
|
|
matrix_jitsi_ldap_auth_method: "bind"
|
|
matrix_jitsi_ldap_version: "3"
|
|
matrix_jitsi_ldap_use_tls: false
|
|
matrix_jitsi_ldap_tls_ciphers: ""
|
|
matrix_jitsi_ldap_tls_check_peer: false
|
|
matrix_jitsi_ldap_tls_cacert_file: "/etc/ssl/certs/ca-certificates.crt"
|
|
matrix_jitsi_ldap_tls_cacert_dir: "/etc/ssl/certs"
|
|
matrix_jitsi_ldap_start_tls: false
|
|
|
|
matrix_jitsi_timezone: UTC
|
|
|
|
matrix_jitsi_xmpp_domain: matrix-jitsi-web
|
|
matrix_jitsi_xmpp_server: matrix-jitsi-prosody
|
|
matrix_jitsi_xmpp_auth_domain: auth.meet.jitsi
|
|
matrix_jitsi_xmpp_bosh_url_base: http://{{ matrix_jitsi_xmpp_server }}:5280
|
|
matrix_jitsi_xmpp_guest_domain: guest.meet.jitsi
|
|
matrix_jitsi_xmpp_muc_domain: muc.meet.jitsi
|
|
matrix_jitsi_xmpp_internal_muc_domain: internal-muc.meet.jitsi
|
|
|
|
matrix_jitsi_recorder_domain: recorder.meet.jitsi
|
|
|
|
|
|
matrix_jitsi_jibri_brewery_muc: jibribrewery
|
|
matrix_jitsi_jibri_pending_timeout: 90
|
|
matrix_jitsi_jibri_xmpp_user: jibri
|
|
matrix_jitsi_jibri_xmpp_password: ''
|
|
matrix_jitsi_jibri_recorder_user: recorder
|
|
matrix_jitsi_jibri_recorder_password: ''
|
|
|
|
matrix_jitsi_enable_lobby: false
|
|
|
|
matrix_jitsi_container_image_tag: "stable-5142"
|
|
|
|
matrix_jitsi_web_docker_image: "docker.io/jitsi/web:{{ matrix_jitsi_container_image_tag }}"
|
|
matrix_jitsi_web_docker_image_force_pull: "{{ matrix_jitsi_web_docker_image.endswith(':latest') }}"
|
|
|
|
matrix_jitsi_web_base_path: "{{ matrix_base_data_path }}/jitsi/web"
|
|
matrix_jitsi_web_config_path: "{{ matrix_jitsi_web_base_path }}/config"
|
|
matrix_jitsi_web_transcripts_path: "{{ matrix_jitsi_web_base_path }}/transcripts"
|
|
|
|
matrix_jitsi_web_public_url: "https://{{ matrix_server_fqn_jitsi }}"
|
|
|
|
# STUN servers used in the web UI. Feel free to point them to your own STUN server.
|
|
# Addresses need to be prefixed with one of `stun:`, `turn:` or `turns:`.
|
|
matrix_jitsi_web_stun_servers: ['stun:meet-jit-si-turnrelay.jitsi.net:443']
|
|
|
|
# Controls whether the matrix-jitsi-web container exposes its HTTP port (tcp/80 in the container).
|
|
#
|
|
# Takes an "<ip>:<port>" or "<port>" value (e.g. "127.0.0.1:12080"), or empty string to not expose.
|
|
matrix_jitsi_web_container_http_host_bind_port: ''
|
|
|
|
# A list of extra arguments to pass to the container
|
|
matrix_jitsi_web_container_extra_arguments: []
|
|
|
|
# List of systemd services that matrix-jitsi-web.service depends on
|
|
matrix_jitsi_web_systemd_required_services_list: ['docker.service']
|
|
|
|
|
|
# Some variables controlling the interface of Jitsi Web.
|
|
# These get applied to `templates/web/interface_config.js.j2`.
|
|
#
|
|
# Besides this, you can also use `matrix_jitsi_web_custom_interface_config_extension`
|
|
# to define any other configuration option.
|
|
matrix_jitsi_web_interface_config_lang_detection: false
|
|
matrix_jitsi_web_interface_config_show_jitsi_watermark: true
|
|
matrix_jitsi_web_interface_config_jitsi_watermark_link: "https://jitsi.org"
|
|
matrix_jitsi_web_interface_config_show_brand_watermark: false
|
|
matrix_jitsi_web_interface_config_brand_watermark_link: ""
|
|
matrix_jitsi_web_interface_config_generate_room_names_on_welcome_page: true
|
|
matrix_jitsi_web_interface_config_display_welcome_page_content: true
|
|
matrix_jitsi_web_interface_config_app_name: "Jitsi Meet"
|
|
matrix_jitsi_web_interface_config_native_app_name: "Jitsi Meet"
|
|
matrix_jitsi_web_interface_config_provider_name: "Jitsi"
|
|
matrix_jitsi_web_interface_config_show_powered_by: false
|
|
matrix_jitsi_web_interface_config_disable_transcription_subtitles: false
|
|
matrix_jisti_web_interface_config_show_deep_linking_image: false
|
|
|
|
# Custom configuration to be injected into `interface_config.js`, passed to Jitsi Web.
|
|
# This configuration gets appended to the final interface configuration that Jitsi Web uses.
|
|
#
|
|
# Note: not to be confused with `matrix_jitsi_web_custom_config_extension`.
|
|
#
|
|
# For interface configuration, the flow is like this:
|
|
# - the contents of `templates/web/interface_config.js.j2` is generated (based on various `matrix_jitsi_web_interface_config_*` variables you see in this file)
|
|
# - the contents of `matrix_jitsi_web_custom_interface_config_extension` is appended and can define new settings or override defaults.
|
|
#
|
|
# Example:
|
|
# matrix_jitsi_web_custom_interface_config_extension: |
|
|
# interfaceConfig.CONNECTION_INDICATOR_AUTO_HIDE_ENABLED = false;
|
|
# interfaceConfig.DISABLE_VIDEO_BACKGROUND = true;
|
|
matrix_jitsi_web_custom_interface_config_extension: ''
|
|
|
|
|
|
# Controls after which participant audio will be muted. If not specified, defaults to Jitsi's default value (likely 10)
|
|
matrix_jitsi_web_config_start_audio_muted_after_nth_participant: ~
|
|
# Controls after which participant video will be muted. If not specified, defaults to Jitsi's default value (likely 10)
|
|
matrix_jitsi_web_config_start_video_muted_after_nth_participant: ~
|
|
|
|
matrix_jitsi_web_config_defaultLanguage: 'en'
|
|
|
|
# Ideal and also maximum resolution width. If not specified, defaults to Jitsi's default value (likely 1280)
|
|
matrix_jitsi_web_config_resolution_width_ideal_and_max: ~
|
|
# Minimum resolution width. If not specified, defaults to Jitsi's default value (likely 320)
|
|
matrix_jitsi_web_config_resolution_width_min: ~
|
|
# Ideal and also maximum resolution height. If not specified, defaults to Jitsi's default value (likely 720)
|
|
matrix_jitsi_web_config_resolution_height_ideal_and_max: ~
|
|
# Minimum resolution height. If not specified, defaults to Jitsi's default value (likely 180)
|
|
matrix_jitsi_web_config_resolution_height_min: ~
|
|
|
|
# Custom configuration to be injected into `custom-config.js`, passed to Jitsi Web.
|
|
# This configuration gets appended to the final configuration that Jitsi Web uses.
|
|
#
|
|
# Note: not to be confused with `matrix_jitsi_web_custom_interface_config_extension`.
|
|
#
|
|
# The flow is like this:
|
|
# - some default configuration is automatically generated based on the environment variables passed to the Jitsi Web container
|
|
# - the contents of `custom-config.js` is appended to it (see `templates/web/custom-config.js.j2`)
|
|
# - said `custom-config.js` contains your custom contents specified in `matrix_jitsi_web_custom_config_extension`.
|
|
#
|
|
# Example:
|
|
# matrix_jitsi_web_custom_config_extension: |
|
|
# if (!config.hasOwnProperty('testing')) config.testing = {};
|
|
# config.testing.p2pTestMode = true
|
|
matrix_jitsi_web_custom_config_extension: ''
|
|
|
|
# Additional environment variables to pass to the Jitsi Web container.
|
|
# You can use this to further influence the default configuration generated by the Jitsi Web container on every startup.
|
|
# Besides influencing the final configuration by passing environment variables, you can also inject custom configuration
|
|
# by using `matrix_jitsi_web_custom_config_extension`.
|
|
#
|
|
# Example:
|
|
# matrix_jitsi_web_environment_variables_extension: |
|
|
# ENABLE_FILE_RECORDING_SERVICE=1
|
|
# DROPBOX_APPKEY=something
|
|
# DROPBOX_REDIRECT_URI=something
|
|
matrix_jitsi_web_environment_variables_extension: ''
|
|
|
|
|
|
matrix_jitsi_prosody_docker_image: "docker.io/jitsi/prosody:{{ matrix_jitsi_container_image_tag }}"
|
|
matrix_jitsi_prosody_docker_image_force_pull: "{{ matrix_jitsi_prosody_docker_image.endswith(':latest') }}"
|
|
|
|
matrix_jitsi_prosody_base_path: "{{ matrix_base_data_path }}/jitsi/prosody"
|
|
matrix_jitsi_prosody_config_path: "{{ matrix_jitsi_prosody_base_path }}/config"
|
|
matrix_jitsi_prosody_plugins_path: "{{ matrix_jitsi_prosody_base_path }}/prosody-plugins-custom"
|
|
|
|
# A list of extra arguments to pass to the container
|
|
matrix_jitsi_prosody_container_extra_arguments: []
|
|
|
|
# List of systemd services that matrix-jitsi-prosody.service depends on
|
|
matrix_jitsi_prosody_systemd_required_services_list: ['docker.service']
|
|
|
|
|
|
matrix_jitsi_jicofo_docker_image: "docker.io/jitsi/jicofo:{{ matrix_jitsi_container_image_tag }}"
|
|
matrix_jitsi_jicofo_docker_image_force_pull: "{{ matrix_jitsi_jicofo_docker_image.endswith(':latest') }}"
|
|
|
|
matrix_jitsi_jicofo_base_path: "{{ matrix_base_data_path }}/jitsi/jicofo"
|
|
matrix_jitsi_jicofo_config_path: "{{ matrix_jitsi_jicofo_base_path }}/config"
|
|
|
|
# A list of extra arguments to pass to the container
|
|
matrix_jitsi_jicofo_container_extra_arguments: []
|
|
|
|
# List of systemd services that matrix-jitsi-jicofo.service depends on
|
|
matrix_jitsi_jicofo_systemd_required_services_list: ['docker.service', 'matrix-jitsi-prosody.service']
|
|
|
|
matrix_jitsi_jicofo_component_secret: ''
|
|
matrix_jitsi_jicofo_auth_user: focus
|
|
matrix_jitsi_jicofo_auth_password: ''
|
|
|
|
|
|
matrix_jitsi_jvb_docker_image: "docker.io/jitsi/jvb:{{ matrix_jitsi_container_image_tag }}"
|
|
matrix_jitsi_jvb_docker_image_force_pull: "{{ matrix_jitsi_jvb_docker_image.endswith(':latest') }}"
|
|
|
|
matrix_jitsi_jvb_base_path: "{{ matrix_base_data_path }}/jitsi/jvb"
|
|
matrix_jitsi_jvb_config_path: "{{ matrix_jitsi_jvb_base_path }}/config"
|
|
|
|
# A list of extra arguments to pass to the container
|
|
matrix_jitsi_jvb_container_extra_arguments: []
|
|
|
|
# List of systemd services that matrix-jitsi-jvb.service depends on
|
|
matrix_jitsi_jvb_systemd_required_services_list: ['docker.service', 'matrix-jitsi-prosody.service']
|
|
|
|
matrix_jitsi_jvb_auth_user: jvb
|
|
matrix_jitsi_jvb_auth_password: ''
|
|
|
|
# STUN servers used by JVB on the server-side, so it can discover its own external IP address.
|
|
# Pointing this to a STUN server running on the same Docker network may lead to incorrect IP address discovery.
|
|
matrix_jitsi_jvb_stun_servers: ['meet-jit-si-turnrelay.jitsi.net:443']
|
|
|
|
matrix_jitsi_jvb_brewery_muc: jvbbrewery
|
|
matrix_jitsi_jvb_rtp_udp_port: 10000
|
|
matrix_jitsi_jvb_rtp_tcp_port: 4443
|
|
|
|
# Custom configuration to be injected into `custom-sip-communicator.properties`, passed to Jitsi JVB.
|
|
# This configuration gets appended to the final configuration that Jitsi JVB uses.
|
|
#
|
|
# The flow is like this:
|
|
# - some default configuration is automatically generated based on the environment variables passed to the Jitsi JVB container
|
|
# - the contents of `custom-sip-communicator.properties` is appended to it (see `templates/jvb/custom-sip-communicator.properties.j2`)
|
|
# - said `custom-sip-communicator.properties` contains your custom contents specified in `matrix_jitsi_jvb_custom_config_extension`.
|
|
#
|
|
# Example:
|
|
# matrix_jitsi_jvb_custom_config_extension: |
|
|
# org.jitsi.videobridge.xmpp.user.shard.DISABLE_CERTIFICATE_VERIFICATION=false
|
|
# org.jitsi.videobridge.ENABLE_STATISTICS=false
|
|
matrix_jitsi_jvb_custom_config_extension: ''
|
|
|
|
# Additional environment variables to pass to the Jitsi JVB container.
|
|
# You can use this to further influence the default configuration generated by the Jitsi JVB container on every startup.
|
|
# Besides influencing the final configuration by passing environment variables, you can also inject custom configuration
|
|
# by using `matrix_jitsi_jvb_custom_config_extension`.
|
|
#
|
|
# Example:
|
|
# matrix_jitsi_jvb_environment_variables_extension: |
|
|
# SOME_VARIABLE=1
|
|
# ANOTHER_VARIABLE=something
|
|
matrix_jitsi_jvb_environment_variables_extension: ''
|
|
|
|
# Controls whether the matrix-jitsi-jvb container exposes its RTP UDP port (udp/10000 in the container).
|
|
#
|
|
# Takes an "<ip>:<port>" or "<port>" value (e.g. "127.0.0.1:10000"), or empty string to not expose.
|
|
matrix_jitsi_jvb_container_rtp_udp_host_bind_port: "{{ matrix_jitsi_jvb_rtp_udp_port }}"
|
|
|
|
# Controls whether the matrix-jitsi-jvb container exposes its RTP UDP port (udp/4443 in the container).
|
|
#
|
|
# Takes an "<ip>:<port>" or "<port>" value (e.g. "127.0.0.1:4443"), or empty string to not expose.
|
|
matrix_jitsi_jvb_container_rtp_tcp_host_bind_port: "{{ matrix_jitsi_jvb_rtp_tcp_port }}"
|