GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar el servidor Rocket.Chat con Nginx en Ubuntu 16.04

Rocket.Chat es una solución de chat en línea gratuita y de código abierto para la comunicación en equipo, le permite crear su propio chat en línea. Rocket.Chat está basado en Javascript, desarrollado usando el framework de pila completa Meteor. Rocket.Chat es una excelente solución para las empresas que desean crear su propia plataforma de chat privado.

En este tutorial, le mostraré cómo crear su propio servidor de chat con Rocket.Chat. Usaré el último servidor Ubuntu LTS 16.04 para la instalación y Nginx como proxy inverso para la aplicación Rocket.Chat.

Requisito previo

  • Ubuntu 16.04
  • Privilegios de raíz

Paso 1:instalar las dependencias de Rocket.Chat

Inicie sesión en el servidor usando ssh (o la terminal) y escriba 'sudo su' para obtener acceso de root:

ssh [correo electrónico protegido]
sudo su

Actualice el repositorio de Ubuntu:

apt-obtener actualización

A continuación, instale los nuevos paquetes necesarios para Rocket.Chat:

apt-get install curl graphicsmagick build-essential

Paso 2:instalar MongoDB

Rocket.Chat requiere MongoDB para la instalación. En este paso, instalaremos MongoDB 3.2 desde el repositorio de MongoDB.

Agregue el servidor de claves MongoDB para que podamos acceder a los paquetes:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927

Luego agregue el repositorio MongoDB con el siguiente comando:

echo "deb http://repo.mongodb.org/apt/ubuntu "$(lsb_release -sc)"/mongodb-org/3.2 multiverso" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list

Actualice el repositorio e instale MongoDB con el comando apt:

apt-get update
apt-get install mongodb-org

Agregue MongoDB para que se ejecute en el momento del arranque e inícielo:

systemctl habilitar mongod
systemctl iniciar mongod

MongoDB se ha iniciado en el puerto 27017.

Paso 3:configurar MongoDB ReplicaSet

Para mejorar el rendimiento, Rocket.Chat utiliza un MongoDB ReplicaSet. En este paso, configuraremos un MongoDB ReplicaSet simple editando el archivo de configuración de MongoDB.

Edite el archivo mongod.conf con vim:

vim /etc/mongod.conf

Agregue un "#" al comienzo de la línea 24 para deshabilitar la ejecución de MongoDB solo en la IP del host local.

red:
    puerto:27017
    #bindIp:127.0.0.1

Agregue la configuración de ReplicaSet a continuación en la línea 34.

 #Replication:
Replicación:
OplogSizember:1
ReplSetName:RS0

Guardar y salir.

Reinicie el servicio MongoDB:

systemctl reiniciar mongod

A continuación, inicie el shell de MongoDB e inicie el ReplicaSet:

exportar LC_ALL=C
mongo
rs.initiate()

Iniciar resultados:

{
  "info2" :"sin configuración especificada. Usando una configuración predeterminada para el equipo",
  "yo" :"nyanko-sensei:27017",
  "ok" :1
}

Asegúrese de que 'ok ' el valor es 1 . Si el resultado es otro número, significa que algo anda mal.

Paso 4:instalar npm y nodejs

En este paso, instalaremos nodejs y npm desde el repositorio de Ubuntu. Luego instalaremos el paquete n con el comando npm para obtener una versión específica de nodejs. La última versión de Rocket.Chat necesita nodejs 4.5.

Instale nodejs y npm desde el repositorio de Ubuntu:

apt-get install nodejs npm

A continuación, instale el paquete n globalmente en el sistema con el comando npm:

instalación npm -g n

Use el comando n para descargar y configurar la versión 4.5 de nodejs.

sudo n 4.5

Finalmente, verifique la versión de nodejs:

nodo --versión
npm -v

Paso 5:instalar el servidor Rocket.Chat

Instalaremos Rocket.Chat (última versión) en el directorio /var/www/.

Descarga la última versión de Rocket.Chat y extráela:

curl -L https://rocket.chat/releases/latest/download -o cohete.chat.tgz
tar -xzvf cohete.chat.tgz

Cree un nuevo directorio /var/www/ y cambie el nombre del directorio del paquete a 'Rocket.Chat' y luego muévalo:

mkdir -p /var/www/
mv paquete Rocket.Chat
mv Rocket.Chat /var/www/

Vaya al directorio Rocket.Chat, establezca algunas variables de entorno requeridas e inicie el servidor Rocket.Chat.

cd /var/www/Rocket.Chat/
cd programas/servidor/
npm install

cd ../../
exportar ROOT_URL=http://192.168.1.110:3000/
exportar MONGO_URL=mongodb://nyanko-sensei:27017/rocketchat?replicaSet=rs0
exportar PORT=3000
nodo principal.js

Rocket.Chat está instalado, abra su navegador web y visite la dirección IP del servidor en el puerto 3000. - 192.168.1.110:3000.

Paso 6:instalar y configurar Nginx como proxy inverso para Rocket.Chat

En el paso 5, instalamos Rocket.Chat como aplicación independiente. En este tutorial, ejecutaremos Rocket.Chat detrás del servidor web Nginx en conexiones https para obtener una configuración segura y rápida.

Instale Nginx con el comando apt:

apt-get install nginx

Cree un nuevo directorio SSL:

mkdir -p /etc/nginx/ssl/
cd /etc/nginx/ssl/

Genere el archivo de certificado SSL y cambie el permiso del archivo de clave:

openssl req -new -x509 -days 365 -nodes -out /etc/nginx/ssl/rocket-chat.crt -keyout /etc/nginx/ssl/rocket-chat.key
chmod 400 cohete- chat.key

A continuación, cree un nuevo archivo de host virtual de Rocket-chat en el directorio de sitios disponibles.

cd /etc/nginx/sites-disponible/
vim cohete-chat

Pegue la nueva configuración de host virtual a continuación:

# Upstreams
backend ascendente {
    server 127.0.0.1:3000;
}

# Redirect Options
server {
  listen 80;
  nombre_servidor rocket-chat.co;
  # aplicar https
  devolver 301 https://$nombre_servidor$request_uri;
}

# HTTPS Servidor
servidor {
    escucha 443;
    nombre_servidor cohete-chat.co;

    error_log /var/log/nginx/rocketchat.access.log;

    ssl activado;
    ssl_certificate /etc/nginx/ssl/rocket-chat.crt;
    ssl_certificate_key /etc/nginx/ssl/rocket-chat.key;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # no use SSLv3 ref:POODLE

    ubicación / {
        proxy_pass http://192.168.1.110:3000/;
        proxy_http_version 1.1;
        proxy_set_header Actualizar $http_upgrade;
        proxy_set_header Conexión "actualizar";
        proxy_set_header Host $http_host;

        proxy_set_header X-Real-IP $remote_ip;
        proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forward-Proto http;
        proxy_set_header X-Nginx-Proxy true;

        proxy_redirect off;
    }
}

Guardar y salir.

Ejecutaré Rocket.Chat con el nuevo nombre de dominio 'rocket-chat.co'. Utilice su propio nombre de dominio y reemplácelo en los archivos de configuración dondequiera que aparezca.

Active el servidor virtual Rocket.Chat y pruebe el archivo de configuración:

ln -s /etc/nginx/sites-disponible/rocket-chat /etc/nginx/sites-enabled/rocket-chat
nginx -t

Asegúrese de que no haya mensajes de error.

Reinicie el servidor web Nginx:

systemctl reiniciar nginx

Paso 7:prueba de Rocket.Chat

Nginx se configuró como proxy inverso para el servidor Rocket.Chat y necesitamos actualizar las variables de entorno para ejecutar Rocket.Chat ahora.

Ejecute Rocket.Chat con las nuevas variables a continuación:

cd /var/www/Rocket.Chat/
exportar ROOT_URL=https://rocket-chat.co
exportar MONGO_URL=mongodb://nyanko-sensei:27017/rocketchat?replicaSet=rs0
exportar PORT=3000
nodo principal.js

En su navegador web, abra la URL:cohete-chat.co (o su nombre de dominio personalizado); será redirigido a la conexión https.

Cree su primera cuenta de administrador haciendo clic en 'Registrar una nueva cuenta' enlace.

Ingrese su nombre, correo electrónico y contraseña, y luego haga clic en 'REGISTRAR UNA NUEVA CUENTA '.

Confirme para usar el nuevo 'SITE-URL' con el nombre de dominio. Haga clic en ' '.

Registre el nombre de usuario, haga clic en 'UTILIZAR ESTE NOMBRE DE USUARIO '.

Se ha creado el usuario administrador y aquí está el panel de Rocket.Chat. Puede comenzar a chatear y crear su propio canal para su equipo.

Rocket.Chat se instaló con el servidor web Nginx en ubuntu 16.04.

Resultados después de que usamos las nuevas variables de entorno:


Ubuntu
  1. Cómo instalar Nginx en Ubuntu 20.04

  2. Cómo instalar el servidor HTTP Git con Nginx en Ubuntu 16.04

  3. Cómo instalar el servidor HTTP Git con Nginx en Ubuntu 20.04

  4. Cómo instalar Rocket.Chat en Ubuntu 16.04

  5. Cómo instalar Rocket.Chat en Ubuntu 18.04

Cómo instalar FileRun en Ubuntu 20.04 con Apache/Nginx

Cómo instalar InvoiceNinja en un servidor Ubuntu 18.04 con Apache/Nginx

Cómo instalar InvoiceNinja en un servidor Ubuntu 20.04 con Apache/Nginx

Cómo instalar Nginx en Ubuntu

Cómo instalar LetsEncrypt con Nginx en Ubuntu 15.04

Cómo implementar Rocket Chat con Nginx en Ubuntu 18.04