Let's Chat es una aplicación de mensajería persistente diseñada para equipos pequeños. Es una aplicación de chat de código abierto y autohospedada que se ejecuta en Node.js y MongoDB. Let's Chat admite salas privadas y protegidas con contraseña, varias salas y notificaciones. Búsqueda Giphy, autenticación Kerberos y LDAP, chat multiusuario y más.
En este tutorial, le mostraremos cómo instalar Let's Chat with Nginx como proxy inverso en Ubuntu 20.04.
Requisitos
- Un Ubuntu 20.04 VPS nuevo en la plataforma en la nube Atlantic.Net
- Un nombre de dominio válido dirigido a la IP de su servidor
- Una contraseña de root configurada en su servidor
Paso 1:crear el servidor en la nube de Atlantic.Net
Primero, inicie sesión en su servidor en la nube de Atlantic.Net. Cree un nuevo servidor, eligiendo Ubuntu 20.04 como sistema operativo con al menos 1 GB de RAM. Conéctese a su servidor en la nube a través de SSH e inicie sesión con las credenciales resaltadas en la parte superior de la página.
Una vez que haya iniciado sesión en su servidor Ubuntu 20.04, ejecute el siguiente comando para actualizar su sistema base con los últimos paquetes disponibles.
apt-get update -y
Paso 2:instalar Node.js
Primero, deberá instalar algunas dependencias requeridas en su sistema. Puede instalarlos todos con el siguiente comando:
apt-get install curl gnupg2 unzip software-properties-common git build-essential -y
Una vez que todos los paquetes estén instalados, agregue el repositorio de Node.js con el siguiente comando:
curl -sL https://deb.nodesource.com/setup_10.x | bash -
Una vez agregado el repositorio, instale Node.js con el siguiente comando:
apt-get install nodejs -y
Después de instalar Node.js, verifique la instalación de Node.js con el siguiente comando:
node -v
Deberías obtener el siguiente resultado:
v10.23.0
Paso 3:instalar MongoDB
Let's Chat utiliza MongoDB como base de datos, por lo que deberá instalarlo en su servidor. De manera predeterminada, la última versión de MongoDB no está disponible en el repositorio predeterminado de Ubuntu 20.04, por lo que deberá agregar el repositorio de MongoDB a su sistema.
Primero, descargue y agregue la clave GPG con el siguiente comando:
curl -fsSL https://www.mongodb.org/static/pgp/server-4.4.asc | apt-key add -
A continuación, agregue el repositorio de MongoDB con el siguiente comando:
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.4.list
A continuación, actualice el repositorio e instale MongoDB con el siguiente comando:
apt-get update -y apt-get install mongodb-org -y
Después de instalar MongoDB, inicie el servicio MongoDB y habilítelo para que se inicie al reiniciar el sistema:
systemctl start mongod systemctl enable mongod
Paso 4:instalar Let's Chat
Primero, descargue la última versión de Let's Chat desde el repositorio de Git con el siguiente comando:
git clone https://github.com/sdelements/lets-chat.git
Luego, cambie el directorio al directorio descargado e instale todas las dependencias requeridas con el siguiente comando:
cd lets-chat npm install
A continuación, copie el archivo de configuración de muestra e inicie el servidor Node con el siguiente comando:
cp settings.yml.sample settings.yml npm start
Una vez que el servidor se haya iniciado correctamente, debería obtener el siguiente resultado:
Ahora, presiona CTRL+C para detener el servidor.
Paso 5:cree un archivo de servicio de Systemd para Let's Chat
A continuación, deberá crear un archivo de servicio systemd para Let's Chat. Puedes crearlo con el siguiente comando:
nano /etc/systemd/system/letschat.service
Agregue las siguientes líneas:
[Unit] Description=Let's Chat Server Wants=mongodb.service After=network.target mongod.service [Service] Type=simple WorkingDirectory=/root/lets-chat ExecStart=/usr/bin/npm start User=root Group=root Restart=always RestartSec=9 [Install] WantedBy=multi-user.target
Guarde y cierre el archivo, luego vuelva a cargar el demonio systemd con el siguiente comando:
systemctl daemon-reload
A continuación, inicie el servicio Let's Chat y habilítelo para que se inicie al reiniciar el sistema con el siguiente comando:
systemctl start letschat systemctl enable letschat
Ahora puede verificar el estado de Let's Chat con el siguiente comando:
systemctl status letschat
Deberías obtener el siguiente resultado:
En este punto, el servicio Let's Chat se inicia y escucha en el puerto 5000. Puede verificarlo con el siguiente comando:
ss -antpl | grep 5000
Deberías obtener el siguiente resultado:
LISTEN 0 511 127.0.0.1:5000 0.0.0.0:* users:(("letschat",pid=31534,fd=20))
Paso 6:instalar y configurar Nginx para Let's Chat
A continuación, deberá instalar y configurar Nginx como proxy inverso para Let's Chat. Primero, instale el servidor Nginx con el siguiente comando:
apt-get install nginx -y
Una vez instalado, cree un nuevo archivo de configuración de host virtual Nginx con el siguiente comando:
nano /etc/nginx/sites-available/letschat.conf
Agregue las siguientes líneas:
server { server_name letschat.example.com; listen 80; access_log /var/log/nginx/lets_chat-access.log; error_log /var/log/nginx/lets_chat-error.log; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_cache_bypass $http_upgrade; proxy_pass http://127.0.0.1:5000; } }
Guarde y cierre el archivo, luego active el host virtual Nginx con el siguiente comando:
ln -s /etc/nginx/sites-available/letschat.conf /etc/nginx/sites-enabled/
A continuación, deberá establecer el tamaño de hash_bucket en el archivo de configuración principal de Nginx.
nano /etc/nginx/nginx.conf
Agregue la siguiente línea debajo de http {:
server_names_hash_bucket_size 64;
Guarde y cierre el archivo, luego reinicie el servicio Nginx para aplicar los cambios:
systemctl restart nginx
Paso 7:acceda a la interfaz web de Let's Chat
Ahora, abra su navegador web y acceda a la interfaz web de Let's Chat usando la URL http://letschat.example.com . Será redirigido a la siguiente página:
Haga clic en “Necesito una cuenta " botón. Debería ver la siguiente página:
Proporcione su nombre de usuario, correo electrónico y contraseña y haga clic en Registrarse botón. Debería ver la siguiente página:
Haga clic en Aceptar botón. Debería ver la página de inicio de sesión de Let's Chat:
Proporcione su nombre de usuario y contraseña y haga clic en Firmar en botón. Debería ver el panel Let's Chat en la siguiente página:
Conclusión
¡Felicidades! Ha instalado correctamente Let's Chat with Nginx como proxy inverso en Ubuntu 20.04. Ahora puede crear una nueva sala de chat e invitar a los usuarios a unirse a esta sala. ¡Empiece ahora con Let's Chat en alojamiento VPS de Atlantic.Net!