Howto: Instalando Rocket.Chat en Docker

Rocket.chat para mi es una de las mejores plataformas de chat OpenSource que existen, es muy flexible a la hora de adaptarlo y lo mejor, tiene cliente para toda las plataformas.

En este caso, realizaremos la instalación de Rocket.chat en docker, por el cual no importara la distribución linux que utilicemos, pero en este caso utilizare Centos 7 como host de mis contenedores para hacer el despliegue.

Instalación:

Vamos a usar varios contenedores y para lograr la comunicación entre ellos, se usara Docker Compose, el cual nos permite hacer despliegues de servicios el cual involucra varios contenedores.

Docker:

Instalamos docker usando el script que se encuentra en su pagina oficial.

Al finalizar el proceso usamos systemctl para subir el servicio y dejarlo habilitado para que inicie cuando se inicie el servidor.

Docker Compose:

Hacemos uso de la ultima versión estable de docker compose que se encuentra en  github y dejamos el script en /usr/local/bin/docker-compose

Aplicamos permisos de ejecución:

Verificamos la versión de docker-compose para mirar que se instalo la versión correcta:

Ya que tenemos docker y docker-compose instalado, vamos a preparar el docker-compose.yml necesario para el despliegue de los contenedores y los directorios locales donde se almacenara la data.

Creando los directorios locales :

Creando el docker-compose.yaml

Creamos y editamos el archivo docker-compose.yml

 

Editar los siguientes parámetros:

ROOT_URL: El FQDN de nuestro host en este caso usare el dominio chat.braybaut.com // En mi caso no voy a exponer el chat a internet, por el cual, este dominio es interno.
ROCKETCHAT_URL: Debemos usar la IP de nuestro host donde van a correr los contenedores que componen rocket.chat

ROCKETCHAT_USER, ROCKETCHAT_PASSWORD y BOT_NAME: son valores que ya van a criterio de ustedes

Reglas de Firewall

Ya para terminar, aplicamos una regla de firewall para abrir el puerto 3000 el cual es el que utilizamos para acceder a rocket.chat

Descargando imágenes y desplegando contenedores

Por ultimo, vamos a correr el archivo docker-compose.yml, en este archivo el bajara los 3 docker image necesarios y posteriormente iniciara un contenedor para cada uno, los docker image que se descargaran son: mongodb, rocket.chat (ultima versión) y hubot.
Despues de bajar las imágenes docker-compose creara los contenedores y aplicara las configuraciones que se encuentran en el archivo docker-compose.yml.

Ingresamos al directorio:

Ejecutamos Docker compose:

La primera vez que se ejecute docker-compose se demorara un poco, debido a que debe descargar los docker image, cuando se vuelva a ejecutar docker-compose la ejecución de los contenedores sera breve debido a que los docker image ya existen.
Después de ejecutar el comando anterior y nos aparezca la siguiente imagen quiere decir que el proceso de despliegue y ejecución a terminado y podemos acceder a nuestro rocket.chat.

Verificamos que los contenedores estén corriendo:

Ingresamos al navegador para ingresar al chat:


Con esto ya terminamos y comprobamos que nuestro Rocket.chat esta corriendo sin ningún inconveniente y lo mejor, en contenedores con persistencia de data.

Próximamente escribiré un articulo el cual explicare como subir estos contenedores usando systemctl.

Mas información:

https://rocket.chat/
https://github.com/RocketChat/Rocket.Chat
https://hub.docker.com/u/rocketchat/

 

 

 

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *