Desplegando Jitsi Meet en Docker

Antes de comenzar vale aclarar que todo lo que se expone en este tutorial es obra de Wilde Manuel Matos Lezcano, en telegram: @Wilde85.

En el día de hoy quiero compartir con ustedes este tutorial, el cual surgió por la necesidad que tuve de implementar un servidor de videoconferencias para la institución donde trabajo, y entonces decidí, si estoy pasando mis servicios a Docker, pues tratemos de montarlo en Docker también, ahí les va:

Primero decir que usaremos como IP del server Jitsi 10.10.10.10, dominio: home.cu

Este servidor de videoconferencias está montado en un nodo provincial al cual se conectan todas las vpn pertenecientes a la institución, es decir, no tendrá salida a internet. Ahora si vamos con el tuto:
1- Lo primero que debemos hacer es instalar docker y docker-compose, para ello puede ver el siguiente enlace.

2- Debemos configurar en nuestro dns el nombre que deseemos para nuestro servidor de conferencias, en mi caso como lo estoy haciendo en un ambiente de pruebas, modificaré el fichero /etc/hosts de la siguiente forma:

y agregue lo siguiente en mi caso.

3- Entrar al sitio donde se brinda información sobre el tema. Como indica en el sitio No podemos clonar el repositorio, debemos descargar del siguiente enlace la última versión estable, lo cual descargará todo lo necesario para bajar las imágenes y luego crear las instancias o contenedores para desplegar la infraestructura necesaria.
Nota: La última versión estable en el momento de creación de este tutorial es la versión 6173. Para descargar se recomienda apoyarse en la herramienta wget.

4- Ahora hay que extraer y posicionarse dentro del directorio del paquete que acabamos de descargar. Para ello tecleamos el siguiente comando:

5- Nos posicionamos dentro del directorio extraído

6- 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:

7- 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.sh el cual se encuentra en el directorio de trabajo, para ello tecleamos:

8- Luego vamos a generar los directorios de trabajo de todos los servicios, para ello tecleamos los siguiente:

9- Ahora hay que modificar el archivo .env para adaptarlo a nuestra red y nuestro dominio, para ello abrimos el fichero .env con el editor de texto preferido.

Variables a configurar:

A- Directorio donde se almacenan las configuraciones del servidor jitsi
Nota: Si modificas alguna variable del fichero .env, será necesario que antes de levantar los containers con docker-compose, eliminar el directorio de configuración (~/.jitsi-meet-cfg por defecto, o lo que se establezca con la variable CONFIG) ya que algunas de estas variables sirven para generar configuración que luego no es modificada.
B- Puerto http por el que escuchará el servidor jitsi.
C- Puerto https por el que escuchará el servidor jitsi
D- Configurar con su zona horaria
E- Url para acceder a nuestro servidor mediante el nombre declarado en nuestro dns.
F- Dirección IP del servidor Jitsi (en este caso utilicé mi localhost para el ambiente de prueba)
G- Esta opción es necesario ponerla a 0 si no poseemos un nombre de dominio público, pues letsencrypt solo puede ser usado si poseemos un nombre de dominio público. (no es mi caso)
H- Se habilita esta opción exigir usuario y contraseña para crear salas de reunión y así que cualquier persona pueda crear salas de reunión y utilizar nuestros recursos sin autorización.
I- Se habilita para permitir a cualquiera que posea la url o dirección de nuestro servidor Jitsi pueda acceder a nuestras reuniones.
J- Aquí indicamos que tipo de autenticación se utilizará para poder crear las salas de conferencias.
Nota: Existen 3 tipos de métodos de autenticación; interno, ldap o jwt.
K-Esta variable no está en el fichero .env, por lo que tenemos que agregarla y configurarla en 0, para que nos permita iniciar correctamente el servidor de videoconferencias.

En la siguiente imagen se muestra un ejemplo de como me quedó:

10- Ahora procedemos a configurar el fichero docker-compose.yml

En este fichero solo modificaremos algo en la etiqueta image, pues por defecto va a buscar las imágenes en hub.docker.com (el cual está bloqueado para Cuba), aquí tenemos 2 opciones; o conectarnos usando vpn o donde dice image: debemos poner otro repo, en mi caso opté por la 2da opción docker.uclv.cu/nombre_imagen:tag

En la siguiente imagen se muestra un ejemplo de como me quedó:

11- Una vez se ha modificado el docker-compose.yml, procedemos a levantarlo, para ello tecleamos en la consola docker-compose.yml up -d, esto comenzará la descarga de las imágenes necesarias para levantar nuestro servidor de conferencias, ahora solo nos queda esperar hasta que terminen de descargarse las imágenes y empiecen a correr nuestros contenedores automáticamente. Para verificar si todos los contenedores están corriendo correctamente debemos teclear: docker-compose ps lo cual deberá devolver algo como la siguiente imagen:

En la figura anterior podemos obtener varios datos importantes, en la columna State nos muestra el estado de los containers (Up / Exit) , y la columna Ports nos da información sobre los puertos que están utilizando en cada container.

12- Ahora debemos entrar a uno de los containers para configurar el usuario y contraseña que tendrá permisos para crear salas de reunión, para ello debemos posicionarnos dentro del container prosody, para ello tecleamos primeramente docker ps, para ver el ID del container. Como se muestra en la imagen ya tenemos el container id del contenedor prosody, ahora debemos teclear el siguiente comando:

13- Esto nos posiciona dentro del contenedor prosody, ahora debemos teclear el comando para crear el usuario y la contraseña:

verifiquemos que se haya creado el usuario correctamente, para ello tecleamos lo siguiente:

correcto, como vemos el usuario se creó correctamente, ahora salimos del contenedor, para ello presionamos Ctrl+D.

14- Ahora vamos a un navegador y tecleamos https://direccion_IP:puerto_seguro

15- Ahora solo nos queda crear el nombre de la sala de reuniones, y aceptar

Bueno y hasta aquí este tutorial, espero les pueda ayudar a configurar su servidor Jitsi Meet de una forma fácil, si le gusta recuerde darle like y compartirlo.

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en una estrella para puntuar!

Promedio de puntuación 5 / 5. Recuento de votos: 9

Hasta ahora, ¡no hay votos!. Sé el primero en puntuar este contenido.

1 comentario

  1. Google Chrome 96.0.4664.93 Google Chrome 96.0.4664.93 Mac OS X  10.15.4 Mac OS X 10.15.4
    Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.93 Safari/537.36

    Muy bueno el tuto, ya me estaba embullando para meter jitsi en docker tambien, quisiera saber si en esta versión de jitsi en docker puedes activar la sala de espera. un saludo y agradecer a por los aportes

Dejar una contestacion

Tu dirección de correo electrónico no será publicada.


*