Rocket.chat es una solución de mensajería en equipo de código abierto similar a Slack que se puede instalar en tu servidor. Con Rocket.chat, puedes chatear con los miembros de tu equipo, empresa y amigos a través de audio y video, interactuar con los visitantes del sitio web en tiempo real -como si fuera un chat de soporte-, compartir archivos, transmitir mensajes de voz y mucho más.
Requisitos para el servidor
Para este tutorial utilizaremos Debian 10 para instalar Rocket.chat y los requisitos del servidor y del tutorial son los siguientes:
- Al menos 1G de memoria RAM en el servidor.
- Un dominio o IP que apunte al servidor.
Instalación del Software necesario
Para poder instalar Rocket.chat deberemos de instalar NodeJS y MongoDB, para ello realizaremos la instalación de los dos paquetes.
Instalación de NodeJS
Procedemos a la instalación de NodeJS 12 con el siguiente tutorial adjunto:

Instalación de MongoDB
También necesitamos un servidor de bases de datos, para esta ocasión usaremos MongoDB. Así que tendremos que segur estos pasos:

Más software necesario
Tras instalar MongoDB y NodeJS, también vamos a tener que instalar el siguiente software:
apt install build-essential graphicsmagick
Y con npm tendremos que instalar inherits y n:
npm install -g inherits n
Tendremos que ejecutar lo siguiente con la versión de NodeJS que hayamos instalado:
n 12.16.1
Instalación de Rocket.chat
Nos descargamos la última versión de Rocket.chat con el siguiente comando:
curl -L https://releases.rocket.chat/latest/download -o /opt/rocket.chat.tgz
Lo descomprimimos:
tar -xzf /opt/rocket.chat.tgz -C /opt
Y procedemos a la instalación:
cd /opt/bundle/programs/server
npm install
Luego modificamos el nombre del directorio:
mv /opt/bundle /opt/Rocket.Chat
Configuración de Rocket.chat
Ahora debemos de crear un usuario y asignar los permisos correctamente:
useradd -M rocketchat
usermod -L rocketchat
chown -R rocketchat:rocketchat /opt/Rocket.Chat
Creamos un fichero para gestionar Rocket.Chat con SystemD:
touch /lib/systemd/system/rocketchat.service
Con el siguiente contenido:
[Unit]
Description=The Rocket.Chat server
After=network.target remote-fs.target nss-lookup.target nginx.target mongod.target
[Service]
ExecStart=/usr/local/bin/node /opt/Rocket.Chat/main.js
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=rocketchat
User=rocketchat
Environment=MONGO_URL=mongodb://localhost:27017/rocketchat?replicaSet=rs01 MONGO_OPLOG_URL=mongodb://localhost:27017/local?replicaSet=rs01 ROOT_URL=http://localhost:3000/ PORT=3000
[Install]
WantedBy=multi-user.target
Es importante que nos fijemos mucho en el parámetro «Environment»:
MONGO_URL=mongodb://localhost:27017/rocketchat?replicaSet=rs01
MONGO_OPLOG_URL=mongodb://localhost:27017/local?replicaSet=rs01
ROOT_URL=http://[TU_DOMINIO_AQUI]:3000
PORT=300
Tenemos que verificar que en el parámetro ROOT_URL esté nuestro dominio de Rocket.Chat.
Finalmente, habilitamos los servicios al arranque del sistema:
systemctl enable mongod
systemctl enable rocketchat
Y los iniciamos:
systemctl start mongod
systemctl start rocketchat
A partir ahora, ya podremos acceder al panel administrativo de Rocket mediante http://[Tu_Dominio]:3000
Comentarios