Fix errors when installing additional JVBpull/2749/head
| @@ -165,7 +165,7 @@ jitsi_prosody_max_participants: 4 # example value | |||
| By default, a single JVB ([Jitsi VideoBridge](https://github.com/jitsi/jitsi-videobridge)) is deployed on the same host as the Matrix server. To allow more video-conferences to happen at the same time, you may need to provision additional JVB services on other hosts. | |||
| There is an ansible playbook that can be run with the following tag: | |||
| ` ansible-playbook -i inventory/hosts --limit jitsi_jvb_servers jitsi_jvb.yml --tags=common,setup-additional-jitsi-jvb,start` | |||
| `ansible-playbook -i inventory/hosts --limit jitsi_jvb_servers jitsi_jvb.yml --tags=common,setup-additional-jitsi-jvb,start` | |||
| For this role to work you will need an additional section in the ansible hosts file with the details of the JVB hosts, for example: | |||
| ``` | |||
| @@ -208,6 +208,16 @@ However, it can also be set the ip address of the matrix server. This can be use | |||
| jitsi_xmpp_server: "192.168.0.1" | |||
| ``` | |||
| For the JVB to be able to contact the XMPP server, the latter must expose the XMPP port (5222). By default, the Matrix server does not expose the | |||
| port; only the XMPP container exposes it internally inside the host, which means that the first JVB (which runs on the Matrix server) can reach it but | |||
| the additional JVB cannot. The port is exposed by setting `jitsi_prosody_container_jvb_host_bind_port` like this: | |||
| ```yaml | |||
| jitsi_prosody_container_jvb_host_bind_port: 5222 | |||
| ``` | |||
| (The default is empty; if it's set then docker forwards the port.) | |||
| The nginx configuration will also need to be updated in order to deal with the additional JVB servers. This is achieved via its own configuration variable | |||
| `matrix_nginx_proxy_proxy_jitsi_additional_jvbs`, which contains a dictionary of server ids to ip addresses. | |||
| @@ -0,0 +1,11 @@ | |||
| jitsi_architecture: "{{ matrix_architecture }}" | |||
| jitsi_hostname: "{{ matrix_server_fqn_jitsi }}" | |||
| jitsi_uid: "{{ matrix_user_uid }}" | |||
| jitsi_gid: "{{ matrix_user_gid }}" | |||
| devture_systemd_service_manager_services_list_auto: | | |||
| {{ | |||
| ([{'name': (jitsi_identifier + '-jvb.service'), 'priority': 4100, 'groups': ['matrix', 'jitsi', 'jitsi-jvb']}] if jitsi_enabled else []) | |||
| }} | |||
| matrix_playbook_docker_installation_enabled: true | |||
| @@ -0,0 +1,35 @@ | |||
| --- | |||
| - name: "Set up additional Jitsi JVB servers" | |||
| hosts: "jitsi_jvb_servers" | |||
| become: true | |||
| roles: | |||
| - role: galaxy/com.devture.ansible.role.playbook_help | |||
| - role: galaxy/com.devture.ansible.role.systemd_docker_base | |||
| - when: matrix_playbook_docker_installation_enabled | bool | |||
| role: galaxy/geerlingguy.docker | |||
| vars: | |||
| docker_install_compose: false | |||
| tags: | |||
| - setup-docker | |||
| - setup-all | |||
| - setup-additional-jitsi-jvb | |||
| - install-docker | |||
| - install-all | |||
| - when: devture_docker_sdk_for_python_installation_enabled | bool | |||
| role: galaxy/com.devture.ansible.role.docker_sdk_for_python | |||
| tags: | |||
| - setup-docker | |||
| - setup-all | |||
| - setup-additional-jitsi-jvb | |||
| - install-docker | |||
| - install-all | |||
| - custom/matrix-base | |||
| - galaxy/jitsi | |||
| - custom/matrix-common-after | |||
| - when: devture_systemd_service_manager_enabled | bool | |||
| role: galaxy/com.devture.ansible.role.systemd_service_manager | |||
| @@ -1,12 +0,0 @@ | |||
| --- | |||
| - name: "Set up additional Jitsi JVB servers" | |||
| hosts: "jitsi_jvb_servers" | |||
| become: true | |||
| roles: | |||
| - role: galaxy/com.devture.ansible.role.playbook_help | |||
| - role: galaxy/com.devture.ansible.role.systemd_docker_base | |||
| - custom/matrix-base | |||
| - galaxy/jitsi | |||
| - custom/matrix-common-after | |||
| @@ -1,143 +0,0 @@ | |||
| --- | |||
| - name: "Set up a Matrix server" | |||
| hosts: "{{ target if target is defined else 'matrix_servers' }}" | |||
| become: true | |||
| roles: | |||
| # Most of the roles below are not distributed with the playbook, but downloaded separately using `ansible-galaxy` via the `just roles` command (see `justfile`). | |||
| - role: galaxy/com.devture.ansible.role.playbook_help | |||
| - role: galaxy/com.devture.ansible.role.systemd_docker_base | |||
| - role: custom/matrix_playbook_migration | |||
| - when: matrix_playbook_docker_installation_enabled | bool | |||
| role: galaxy/geerlingguy.docker | |||
| vars: | |||
| docker_install_compose: false | |||
| tags: | |||
| - setup-docker | |||
| - setup-all | |||
| - install-docker | |||
| - install-all | |||
| - when: devture_docker_sdk_for_python_installation_enabled | bool | |||
| role: galaxy/com.devture.ansible.role.docker_sdk_for_python | |||
| tags: | |||
| - setup-docker | |||
| - setup-all | |||
| - install-docker | |||
| - install-all | |||
| - when: devture_timesync_installation_enabled | bool | |||
| role: galaxy/com.devture.ansible.role.timesync | |||
| tags: | |||
| - setup-timesync | |||
| - setup-all | |||
| - install-timesync | |||
| - install-all | |||
| - custom/matrix-base | |||
| - custom/matrix-dynamic-dns | |||
| - custom/matrix-mailer | |||
| - role: galaxy/com.devture.ansible.role.postgres | |||
| - galaxy/redis | |||
| - custom/matrix-corporal | |||
| - custom/matrix-bridge-appservice-discord | |||
| - custom/matrix-bridge-appservice-slack | |||
| - custom/matrix-bridge-appservice-webhooks | |||
| - custom/matrix-bridge-appservice-irc | |||
| - custom/matrix-bridge-appservice-kakaotalk | |||
| - custom/matrix-bridge-beeper-linkedin | |||
| - custom/matrix-bridge-go-skype-bridge | |||
| - custom/matrix-bridge-mautrix-facebook | |||
| - custom/matrix-bridge-mautrix-twitter | |||
| - custom/matrix-bridge-mautrix-hangouts | |||
| - custom/matrix-bridge-mautrix-googlechat | |||
| - custom/matrix-bridge-mautrix-instagram | |||
| - custom/matrix-bridge-mautrix-signal | |||
| - custom/matrix-bridge-mautrix-telegram | |||
| - custom/matrix-bridge-mautrix-whatsapp | |||
| - custom/matrix-bridge-mautrix-discord | |||
| - custom/matrix-bridge-mautrix-slack | |||
| - custom/matrix-bridge-mx-puppet-discord | |||
| - custom/matrix-bridge-mx-puppet-groupme | |||
| - custom/matrix-bridge-mx-puppet-steam | |||
| - custom/matrix-bridge-mx-puppet-slack | |||
| - custom/matrix-bridge-mx-puppet-twitter | |||
| - custom/matrix-bridge-mx-puppet-instagram | |||
| - custom/matrix-bridge-sms | |||
| - custom/matrix-bridge-heisenbridge | |||
| - custom/matrix-bridge-hookshot | |||
| - custom/matrix-bot-matrix-reminder-bot | |||
| - custom/matrix-bot-matrix-registration-bot | |||
| - custom/matrix-bot-maubot | |||
| - custom/matrix-bot-buscarron | |||
| - custom/matrix-bot-honoroit | |||
| - custom/matrix-bot-postmoogle | |||
| - custom/matrix-bot-go-neb | |||
| - custom/matrix-bot-mjolnir | |||
| - custom/matrix-bot-draupnir | |||
| - custom/matrix-bot-chatgpt | |||
| - custom/matrix-cactus-comments | |||
| - custom/matrix-rageshake | |||
| - custom/matrix-synapse | |||
| - custom/matrix-synapse-auto-compressor | |||
| - custom/matrix-synapse-reverse-proxy-companion | |||
| - custom/matrix-dendrite | |||
| - custom/matrix-conduit | |||
| - custom/matrix-synapse-admin | |||
| - galaxy/prometheus_node_exporter | |||
| - galaxy/prometheus_postgres_exporter | |||
| - custom/matrix-prometheus-nginxlog-exporter | |||
| - galaxy/prometheus | |||
| - galaxy/grafana | |||
| - custom/matrix-prometheus-services-connect | |||
| - custom/matrix-prometheus-services-proxy-connect | |||
| - custom/matrix-registration | |||
| - custom/matrix-client-element | |||
| - custom/matrix-client-hydrogen | |||
| - custom/matrix-client-cinny | |||
| - galaxy/jitsi | |||
| - custom/matrix-user-verification-service | |||
| - custom/matrix-ldap-registration-proxy | |||
| - custom/matrix-ma1sd | |||
| - custom/matrix-dimension | |||
| - galaxy/etherpad | |||
| - custom/etherpad-proxy-connect | |||
| - custom/matrix-sliding-sync | |||
| - custom/matrix-email2matrix | |||
| - custom/matrix-sygnal | |||
| - galaxy/ntfy | |||
| - custom/matrix-nginx-proxy | |||
| - custom/matrix-coturn | |||
| - role: galaxy/auxiliary | |||
| - role: galaxy/com.devture.ansible.role.postgres_backup | |||
| - role: galaxy/backup_borg | |||
| - custom/matrix-user-creator | |||
| - custom/matrix-common-after | |||
| - role: galaxy/com.devture.ansible.role.container_socket_proxy | |||
| - role: galaxy/com.devture.ansible.role.traefik | |||
| - role: galaxy/com.devture.ansible.role.traefik_certs_dumper | |||
| - when: devture_systemd_service_manager_enabled | bool | |||
| role: galaxy/com.devture.ansible.role.systemd_service_manager | |||
| # This is pretty much last, because we want it to better serve as a "last known good configuration". | |||
| # See: https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/2217#issuecomment-1301487601 | |||
| - when: devture_playbook_state_preserver_enabled | bool | |||
| role: galaxy/com.devture.ansible.role.playbook_state_preserver | |||
| tags: | |||
| - setup-all | |||
| - install-all | |||
| - role: galaxy/com.devture.ansible.role.playbook_runtime_messages | |||
| @@ -1 +0,0 @@ | |||
| playbooks/matrix.yml | |||
| @@ -0,0 +1,143 @@ | |||
| --- | |||
| - name: "Set up a Matrix server" | |||
| hosts: "{{ target if target is defined else 'matrix_servers' }}" | |||
| become: true | |||
| roles: | |||
| # Most of the roles below are not distributed with the playbook, but downloaded separately using `ansible-galaxy` via the `just roles` command (see `justfile`). | |||
| - role: galaxy/com.devture.ansible.role.playbook_help | |||
| - role: galaxy/com.devture.ansible.role.systemd_docker_base | |||
| - role: custom/matrix_playbook_migration | |||
| - when: matrix_playbook_docker_installation_enabled | bool | |||
| role: galaxy/geerlingguy.docker | |||
| vars: | |||
| docker_install_compose: false | |||
| tags: | |||
| - setup-docker | |||
| - setup-all | |||
| - install-docker | |||
| - install-all | |||
| - when: devture_docker_sdk_for_python_installation_enabled | bool | |||
| role: galaxy/com.devture.ansible.role.docker_sdk_for_python | |||
| tags: | |||
| - setup-docker | |||
| - setup-all | |||
| - install-docker | |||
| - install-all | |||
| - when: devture_timesync_installation_enabled | bool | |||
| role: galaxy/com.devture.ansible.role.timesync | |||
| tags: | |||
| - setup-timesync | |||
| - setup-all | |||
| - install-timesync | |||
| - install-all | |||
| - custom/matrix-base | |||
| - custom/matrix-dynamic-dns | |||
| - custom/matrix-mailer | |||
| - role: galaxy/com.devture.ansible.role.postgres | |||
| - galaxy/redis | |||
| - custom/matrix-corporal | |||
| - custom/matrix-bridge-appservice-discord | |||
| - custom/matrix-bridge-appservice-slack | |||
| - custom/matrix-bridge-appservice-webhooks | |||
| - custom/matrix-bridge-appservice-irc | |||
| - custom/matrix-bridge-appservice-kakaotalk | |||
| - custom/matrix-bridge-beeper-linkedin | |||
| - custom/matrix-bridge-go-skype-bridge | |||
| - custom/matrix-bridge-mautrix-facebook | |||
| - custom/matrix-bridge-mautrix-twitter | |||
| - custom/matrix-bridge-mautrix-hangouts | |||
| - custom/matrix-bridge-mautrix-googlechat | |||
| - custom/matrix-bridge-mautrix-instagram | |||
| - custom/matrix-bridge-mautrix-signal | |||
| - custom/matrix-bridge-mautrix-telegram | |||
| - custom/matrix-bridge-mautrix-whatsapp | |||
| - custom/matrix-bridge-mautrix-discord | |||
| - custom/matrix-bridge-mautrix-slack | |||
| - custom/matrix-bridge-mx-puppet-discord | |||
| - custom/matrix-bridge-mx-puppet-groupme | |||
| - custom/matrix-bridge-mx-puppet-steam | |||
| - custom/matrix-bridge-mx-puppet-slack | |||
| - custom/matrix-bridge-mx-puppet-twitter | |||
| - custom/matrix-bridge-mx-puppet-instagram | |||
| - custom/matrix-bridge-sms | |||
| - custom/matrix-bridge-heisenbridge | |||
| - custom/matrix-bridge-hookshot | |||
| - custom/matrix-bot-matrix-reminder-bot | |||
| - custom/matrix-bot-matrix-registration-bot | |||
| - custom/matrix-bot-maubot | |||
| - custom/matrix-bot-buscarron | |||
| - custom/matrix-bot-honoroit | |||
| - custom/matrix-bot-postmoogle | |||
| - custom/matrix-bot-go-neb | |||
| - custom/matrix-bot-mjolnir | |||
| - custom/matrix-bot-draupnir | |||
| - custom/matrix-bot-chatgpt | |||
| - custom/matrix-cactus-comments | |||
| - custom/matrix-rageshake | |||
| - custom/matrix-synapse | |||
| - custom/matrix-synapse-auto-compressor | |||
| - custom/matrix-synapse-reverse-proxy-companion | |||
| - custom/matrix-dendrite | |||
| - custom/matrix-conduit | |||
| - custom/matrix-synapse-admin | |||
| - galaxy/prometheus_node_exporter | |||
| - galaxy/prometheus_postgres_exporter | |||
| - custom/matrix-prometheus-nginxlog-exporter | |||
| - galaxy/prometheus | |||
| - galaxy/grafana | |||
| - custom/matrix-prometheus-services-connect | |||
| - custom/matrix-prometheus-services-proxy-connect | |||
| - custom/matrix-registration | |||
| - custom/matrix-client-element | |||
| - custom/matrix-client-hydrogen | |||
| - custom/matrix-client-cinny | |||
| - galaxy/jitsi | |||
| - custom/matrix-user-verification-service | |||
| - custom/matrix-ldap-registration-proxy | |||
| - custom/matrix-ma1sd | |||
| - custom/matrix-dimension | |||
| - galaxy/etherpad | |||
| - custom/etherpad-proxy-connect | |||
| - custom/matrix-sliding-sync | |||
| - custom/matrix-email2matrix | |||
| - custom/matrix-sygnal | |||
| - galaxy/ntfy | |||
| - custom/matrix-nginx-proxy | |||
| - custom/matrix-coturn | |||
| - role: galaxy/auxiliary | |||
| - role: galaxy/com.devture.ansible.role.postgres_backup | |||
| - role: galaxy/backup_borg | |||
| - custom/matrix-user-creator | |||
| - custom/matrix-common-after | |||
| - role: galaxy/com.devture.ansible.role.container_socket_proxy | |||
| - role: galaxy/com.devture.ansible.role.traefik | |||
| - role: galaxy/com.devture.ansible.role.traefik_certs_dumper | |||
| - when: devture_systemd_service_manager_enabled | bool | |||
| role: galaxy/com.devture.ansible.role.systemd_service_manager | |||
| # This is pretty much last, because we want it to better serve as a "last known good configuration". | |||
| # See: https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/2217#issuecomment-1301487601 | |||
| - when: devture_playbook_state_preserver_enabled | bool | |||
| role: galaxy/com.devture.ansible.role.playbook_state_preserver | |||
| tags: | |||
| - setup-all | |||
| - install-all | |||
| - role: galaxy/com.devture.ansible.role.playbook_runtime_messages | |||