udelarinterior.jitsi_meet
jitsi-meet
This role installs and sets up the Jitsi Meet video conferencing software.
Requirements
Make sure you have a DNS record pointing to the server and that you have SSL keys. If you don't have SSL keys yet, you can use the geerlingguy.certbot Ansible role to get free SSL certificates from LetsEncrypt.
You’ll need to open TCP port 443 and UDP port 10000 for Jitsi Meet components to function properly. This role can configure the firewall using ufw
if you set jitsi_meet_configure_firewall: true
. If you are using a different firewall system like iptables, set jitsi_meet_configure_firewall: false
. If you're on AWS or a similar platform, make sure to open those ports in the Security Group.
Role Variables
Key Variables You Need to Change
jitsi_meet_server_name: "{{ ansible_fqdn | default('localhost') }}"
- Use "localhost" if no SSL, otherwise replace with your domain name.
jitsi_meet_install_recommends: yes
- Set it to ‘no’ if you want to skip installing the turnserver.
jitsi_meet_enable_p2p_mode: true
- This enables peer-to-peer connections.
NGINX Configuration
jitsi_meet_configure_nginx: true
- Set to false if you want to manage web server configurations yourself.
Security Configuration
jitsi_meet_configure_firewall: false
- Set to true to set up the firewall automatically.
Other Useful Variables
- Customize various options related to installation packages, SIP (Session Initiation Protocol) configurations, and UI settings based on your needs.
Screen Sharing
Jitsi Meet allows screen sharing through browser extensions. Only the person sharing their screen needs the extension. You can create your own extension for Chrome or Firefox. Follow the Jidesha documentation for detailed instructions.
Dependencies
While it’s not a strict dependency, check out geerlingguy.certbot for easy SSL certificate management.
Example Playbook
Here’s a simple playbook example demonstrating the usage of this role:
- name: Configure jitsi-meet server
hosts: jitsi
vars:
jitsi_meet_server_name: meet.example.com
roles:
- role: geerlingguy.certbot
become: yes
certbot_create_if_missing: true
certbot_admin_email: "webmaster@{{ jitsi_meet_server_name }}"
certbot_certs:
- domains:
- "{{ jitsi_meet_server_name }}"
- role: udelarinterior.jitsi_meet
jitsi_meet_ssl_cert_path: "/etc/letsencrypt/live/{{ jitsi_meet_server_name }}/fullchain.pem"
jitsi_meet_ssl_key_path: "/etc/letsencrypt/live/{{ jitsi_meet_server_name }}/privkey.pem"
become: yes
tags: jitsi
Running the Tests
To test this role, install the required testing tools and run:
pip install molecule
gem install serverspec
molecule test
For additional commands, run:
molecule idempotence
molecule verify
License
MIT
Author Information
Created by Freedom of the Press Foundation, UdelaR Interior, @santiagomr.
Installs Jitsi Meet videoconferencing software
ansible-galaxy install udelarinterior.jitsi_meet