Rocketchat

Configurar el Rocket Chat como servicio
Una vez instalado el Rocket Chat se debe crear el archivo rocketchat.service: vi /etc/systemd/system/rocketchat.service

Que contenga lo siguiente:

[Unit] Description=RocketChat Server

[Service] ExecStart=/usr/bin/node /opt/Rocket.Chat/main.js   # Specify the location of node and location of main.js Restart=always RestartSec=10                                               # Restart service after 10 seconds if node service crashes StandardOutput=syslog                                       # Output to syslog StandardError=syslog                                        # Output to syslog SyslogIdentifier=nodejs-example User=rocketchat Environment=NODE_ENV=production PORT=3000 ROOT_URL=https://dominio.com/ MONGO_URL=mongodb://localhost:27017/rocketchat
 * 1) Group=

[Install] WantedBy=multi-user.target

Se debe reemplazar dominio.com con el dominio a través del cual se accederá al Rocket Chat

Luego para activar el servicio ejecutar: systemctl enable rocketchat.service Para iniciar el servicio: systemctl start rocketchat.service Para verificar el estado del servicio: systemctl status rocketchat.service

Procedimiento de actualización del Rocket Chat

 * 1) Descargar el bundle de la última versión (archivo .tar.gz) y extraerlo
 * Para actualizar la versión del RocketChat, se debe descargar la misma de la página oficial.
 * 1) Verificar versión de NodeJS instalada en el servidor
 * node -v
 * La versión instalada debe ser igual o mayor a la versión requerida por el RocketChat. Esto se puede ver en el archivo:
 * /opt/RocketChat/server/.bundle_version.txt
 * Una vez hecho esto, se debe cambiar el appID en el archivo:
 * Rocket.Chat/programs/server/config.json
 * Una vez configurado esto, se debe comprimir esto y subirlo al servidor:
 * rsync -avP archivo.tar.gz user@servidor:/opt/
 * 1) Hacer un backup del directorio actual del Rocket Chat (/opt/Rocket.Chat) para ello hay que detener el servicio del rocketchat systemctl stop rocketchat.service
 * 2) Reemplazar el contenido del directorio /opt/Rocket.Chat con el contenido del directorio bundle
 * 3) Ejecutar el instalador cd /opt/Rocket.Chat/programs/server  npm install
 * 4) Iniciar el servicio del rocketchat systemctl start rocketchat.service
 * 5) Verificar si se inicia o no el servicio, si no se inicia probar lo siguiente:


 * Ubicarse en el directorio /opt/Rocket.Chat
 * Ejecutar el comando node main.js y ver los errores que aparezcan
 * Si aparecen errores del tipo "Error: Cannot find module 'módulo'" quiere decir que la versión nueva del rocketchat depende de módulos nuevos no instalados en el sistema, ejecutar el comando npm install  por cada módulo que falte.