mirror of
				https://github.com/spantaleev/matrix-docker-ansible-deploy.git
				synced 2025-10-31 07:17:57 +01:00 
			
		
		
		
	Auto-enable TURN support for LiveKit Server
This commit is contained in:
		| @@ -25,4 +25,8 @@ To ensure LiveKit Server functions correctly, the following firewall rules and p | ||||
|  | ||||
| - `7882/udp`: ICE/UDP Mux | ||||
|  | ||||
| - `3479/udp`: TURN/UDP | ||||
|  | ||||
| - `5350/tcp`: TURN/TCP | ||||
|  | ||||
| 💡 The suggestions above are inspired by the upstream [Ports and Firewall](https://docs.livekit.io/home/self-hosting/ports-firewall/) documentation based on how LiveKit is configured in the playbook. If you've using custom configuration for the LiveKit Server role, you may need to adjust the firewall rules accordingly. | ||||
|   | ||||
| @@ -6314,6 +6314,24 @@ livekit_server_container_image_self_build: "{{ matrix_architecture not in ['arm6 | ||||
| livekit_server_container_network: "{{ matrix_addons_container_network }}" | ||||
| livekit_server_container_additional_networks_auto: "{{ [matrix_playbook_reverse_proxyable_services_additional_network] if (livekit_server_container_labels_traefik_enabled and matrix_playbook_reverse_proxyable_services_additional_network) else [] }}" | ||||
|  | ||||
| livekit_server_container_additional_volumes_auto: | | ||||
|   {{ | ||||
|     ( | ||||
|       [ | ||||
|        { | ||||
|          'src': (traefik_certs_dumper_dumped_certificates_dir_path +  '/' + livekit_server_config_turn_domain + '/certificate.crt'), | ||||
|          'dst': livekit_server_config_turn_cert_file, | ||||
|          'options': 'ro', | ||||
|        }, | ||||
|        { | ||||
|          'src': (traefik_certs_dumper_dumped_certificates_dir_path +  '/' + livekit_server_config_turn_domain + '/privatekey.key'), | ||||
|          'dst': livekit_server_config_turn_key_file, | ||||
|          'options': 'ro', | ||||
|        }, | ||||
|       ] if (matrix_playbook_reverse_proxy_type in ['playbook-managed-traefik', 'other-traefik-container'] and traefik_certs_dumper_enabled and livekit_server_config_turn_enabled and (livekit_server_config_turn_cert_file and livekit_server_config_turn_key_file)) else [] | ||||
|     ) | ||||
|   }} | ||||
|  | ||||
| livekit_server_container_labels_traefik_enabled: "{{ matrix_playbook_reverse_proxy_type in ['playbook-managed-traefik', 'other-traefik-container'] }}" | ||||
| livekit_server_container_labels_traefik_docker_network: "{{ matrix_playbook_reverse_proxyable_services_additional_network }}" | ||||
| livekit_server_container_labels_traefik_entrypoints: "{{ traefik_entrypoint_primary }}" | ||||
| @@ -6338,6 +6356,33 @@ livekit_server_config_turn_tls_port: 5350 | ||||
| # Note that TURN is not enabled by default. See `livekit_server_config_turn_enabled`. | ||||
| livekit_server_config_turn_udp_port: 3479 | ||||
|  | ||||
| # LiveKit's TURN implementation requires SSL certificates. | ||||
| # We only enable it if we can provide them automatically via Traefik + Traefik Certs Dumper. | ||||
| livekit_server_config_turn_enabled: "{{ matrix_playbook_reverse_proxy_type in ['playbook-managed-traefik', 'other-traefik-container'] and traefik_certs_dumper_enabled }}" | ||||
|  | ||||
| livekit_server_config_turn_cert_file: |- | ||||
|   {{ | ||||
|     { | ||||
|       'playbook-managed-traefik': ('/certificate.crt' if traefik_certs_dumper_enabled else ''), | ||||
|       'other-traefik-container': ('/certificate.crt' if traefik_certs_dumper_enabled else ''), | ||||
|       'none': '', | ||||
|     }[matrix_playbook_reverse_proxy_type] | ||||
|   }} | ||||
|  | ||||
| livekit_server_config_turn_key_file: |- | ||||
|   {{ | ||||
|     { | ||||
|       'playbook-managed-traefik': ('/privatekey.key' if traefik_certs_dumper_enabled else ''), | ||||
|       'other-traefik-container': ('/privatekey.key' if traefik_certs_dumper_enabled else ''), | ||||
|       'none': '', | ||||
|     }[matrix_playbook_reverse_proxy_type] | ||||
|   }} | ||||
|  | ||||
| livekit_server_systemd_required_services_list_auto: | | ||||
|   {{ | ||||
|     ([traefik_certs_dumper_identifier + '-wait-for-domain@' + livekit_server_config_turn_domain + '.service'] if matrix_playbook_reverse_proxy_type in ['playbook-managed-traefik', 'other-traefik-container'] and traefik_certs_dumper_enabled and livekit_server_config_turn_enabled else []) | ||||
|   }} | ||||
|  | ||||
| ######################################################################## | ||||
| #                                                                      # | ||||
| # /livekit-server                                                      # | ||||
|   | ||||
		Reference in New Issue
	
	Block a user