DevOps Conferencias usando docker y jitsi

Guia rápida de DevOps conferencias usando docker jitsi, vamos a instalar y configurar una solución integral de jitsi-meet para hacer video conferencias.
Para esto vamos a tener que instalar docker-compose.

Primera parte vamos a descargar del git-hub oficial de jitsi todo lo necesario para trabajar.

# git clone https://github.com/jitsi/docker-jitsi-meet && cd docker-jitsi-meet

Este comando va a descargar todo lo necesario para descargar las imagenes y luego crear las instancias o contenedores para desplegar la infraestructura necesaria.

En el directorio descargado vamos a encontrar un archivo llamado env.example, tenemos que duplicarlo y transformarlo en el archivo .env, para esto vamos a usar el comando cp.

 

cp env.example .env

Una vez realizado este paso vamos a crear las claves para que todos los servicios funcionen sin necesidad de modificar los archivos de configuración, para esto vamos a usar el script llamado gen-passwords el cual se encuentra en el directorio de trabajo.

./gen-passwords.sh

Luego de esto vamos a generar los directorios de trabajo  de todos los servicios.

 

mkdir -p ~/.jitsi-meet-cfg/{web/letsencrypt,transcripts,prosody/config,prosody/prosody-plugins-custom,jicofo,jvb,jigasi,jibri}

Ahora tenemos que modificar el archivo .env para adaptarlo a nuestra red y nuestro dominio las variables a modificar son:

 

Configuración de Entorno

PUBLIC_URL=nombre_de_nuestro_servidor (en mi caso conferencias.carreralinux.com.ar)
HOST_ADDRESS=IP.INTERNA.DEL.HOST (en mi caso 192.168.0.???)

Mas abajo vamos a encontrar las siguientes variables

 

ENABLE_AUTH=1
ENABLE_GUEST=1
AUTH_TYPE= internal

Estas variables habilitan a que quienes quieran crear una sala de conferencias van a tener que tener un usuario y una clave en prosody.

Ahora vamos a activar el módulo de grabacion y estreaming provisto por el programa jibri

ENABLE_RECORDING=1

Eso es todo ahora vamos a crear los imagenes compilando los programas con las variables que acabamos de modificar.

docker-compose -f docker-compose.yml -f jibri.yml up

Seguridad en el servidor

Es importante que el servidor tenga abiertos los puertos necesarios para que podamos conectarnos  a jitsi sin problemas instalamos ufw para que sea mas sencillo todo.

apt install ufw 

Luego activamos los puertos:

 

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 4443/tcp
sudo ufw allow 10000/udp

Verificamos que esten activos

ufw status

output
Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
80/tcp                     ALLOW       Anywhere
443/tcp                    ALLOW       Anywhere
4443/tcp                   ALLOW       Anywhere
10000/udp                  ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)
80/tcp (v6)                ALLOW       Anywhere (v6)
443/tcp (v6)               ALLOW       Anywhere (v6)
4443/tcp (v6)              ALLOW       Anywhere (v6)
10000/udp (v6)             ALLOW       Anywhere (v6)

Una vez que configuramos todo podemos crear las instancias y comenzar a trabajar.

 

docker-compose -f docker-compose.yml -f jibri.yml up

Estos comando van a crear la configuración necesaria en los contenedores para poder trabajar.

Ahora podemos conectarnos a nuestro servidor usando la URL

https://conferencia.carreralinux.com.ar

y veremos la siguiente imágen:

 

DevOps Conferencias usando docker y jitsi
DevOps Conferencias usando docker y jitsi

 

Más info en:

Ver la documentación del proyecto