Instale el marco Sails.js con Nginx en CentOS 8
Sails.js es un marco de Javascript para Node.js. Se utiliza para desarrollar aplicaciones en tiempo real muy rápidamente. Le permite parecerse a la arquitectura MVC de marcos como Ruby on Rails. Viene con planos que ayudan a impulsar el backend de su aplicación sin escribir ningún código. Es compatible con otros front-end, incluidos Angular, React, iOS, Android, Windows Phone, hardware personalizado o algo completamente diferente.
En esta publicación, le mostraremos cómo instalar Sails.js con Nginx en CentOS 8
requisitos previos
- Un servidor que ejecuta CentOS 8.
- Una contraseña de root está configurada en el servidor.
Instalar Node.js
Primero, instale todas las dependencias requeridas usando el siguiente comando:
dnf install curl gcc-c++ make -y
Una vez que todas las dependencias estén instaladas, agregue el repositorio fuente de Node con el siguiente comando:
curl -sL https://rpm.nodesource.com/setup_16.x | bash -
Después de agregar el repositorio fuente de Node, instale Node.js con el siguiente comando:
dnf install nodejs -y
Una vez completada la instalación, verifique la versión de Node.js con el siguiente comando:
node --version
Deberías obtener el siguiente resultado:
v16.4.0
Instalar Sails.js
Puede instalar Sails.js usando el comando NPM como se muestra a continuación:
npm -g install sails
Luego, crea tu proyecto usando Sails.js con el siguiente comando:
sails new myproject
Se le pedirá que elija una plantilla para su aplicación:
Choose a template for your new Sails app: 1. Web App · Extensible project with auth, login, & password recovery 2. Empty · An empty Sails app, yours to configure (type "?" for help, or <CTRL+C> to cancel) ? 2
Escriba 2 y presione Entrar para instalar la aplicación. Deberías obtener el siguiente resultado:
info: Installing dependencies... Press CTRL+C to cancel. (to skip this step in the future, use --fast) info: Created a new Sails app `myproject`!
Inicie la aplicación Sails.js
A continuación, cambie el directorio a myproject e inicie su aplicación con el siguiente comando:
cd myproject sails lift
Deberías obtener el siguiente resultado:
info: Starting app... info: info: .-..-. info: info: Sails <| .-..-. info: v1.4.3 |\ info: /|.\ info: / || \ info: ,' |' \ info: .-'.-==|/_--' info: `--'-------' info: __---___--___---___--___---___--___ info: ____---___--___---___--___---___--___-__ info: info: Server lifted in `/root/myproject` info: To shut down Sails, press + C at any time. info: Read more at https://sailsjs.com/support. debug: ------------------------------------------------------- debug: :: Thu Jun 24 2021 04:46:13 GMT-0400 (Eastern Daylight Time) debug: Environment : development debug: Port : 1337 debug: -------------------------------------------------------
Presione CTRL + C para detener la aplicación.
Crear un archivo de servicio de Systemd para Sails.js
A continuación, deberá crear un archivo de servicio systemd para administrar su aplicación.
Puedes crearlo con el siguiente comando:
nano /lib/systemd/system/sails.service
Agregue las siguientes líneas:
[Unit] After=network.target [Service] Type=simple User=root WorkingDirectory=/root/myproject ExecStart=/usr/bin/sails lift Restart=on-failure [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 Sails y habilítelo para que se inicie al reiniciar el sistema:
systemctl start sails systemctl enable sails
Puedes consultar el estado de las Velas con el siguiente comando:Publicidad
systemctl status sails
Deberías obtener el siguiente resultado:
? sails.service Loaded: loaded (/usr/lib/systemd/system/sails.service; disabled; vendor preset: disabled) Active: active (running) since Thu 2021-06-24 04:47:07 EDT; 5s ago Main PID: 47388 (node) Tasks: 22 (limit: 25014) Memory: 148.1M CGroup: /system.slice/sails.service ??47388 node /usr/bin/sails lift ??47395 grunt Jun 24 04:47:09 centos8 sails[47388]: info: ____---___--___---___--___---___--___-__ Jun 24 04:47:09 centos8 sails[47388]: info: Jun 24 04:47:09 centos8 sails[47388]: info: Server lifted in `/root/myproject` Jun 24 04:47:09 centos8 sails[47388]: info: To shut down Sails, press + C at any time. Jun 24 04:47:09 centos8 sails[47388]: info: Read more at https://sailsjs.com/support. Jun 24 04:47:09 centos8 sails[47388]: debug: ------------------------------------------------------- Jun 24 04:47:09 centos8 sails[47388]: debug: :: Thu Jun 24 2021 04:47:09 GMT-0400 (Eastern Daylight Time) Jun 24 04:47:09 centos8 sails[47388]: debug: Environment : development Jun 24 04:47:09 centos8 sails[47388]: debug: Port : 1337 Jun 24 04:47:09 centos8 sails[47388]: debug: -------------------------------------------------------
En este punto, Sails arranca y escucha en el puerto 1337.
Configurar Nginx como proxy inverso para la aplicación Sails
Se recomienda instalar y configurar Nginx como un proxy inverso para su aplicación Sails.
Primero, instale el paquete Nginx con el siguiente comando:
dnf install nginx -y
Después de instalar Nginx, cree un archivo de configuración de host virtual de Nginx para Sails:
nano /etc/nginx/conf.d/sails.conf
Agregue las siguientes líneas:
server { listen 80; server_name sails.domain.com; location / { proxy_pass http://localhost:1337/; proxy_set_header Host $host; proxy_buffering off; } }
Guarde y cierre el archivo cuando haya terminado.
Luego, verifique el Nginx para cualquier error de configuración con el siguiente comando:
nginx -t
Deberías obtener el siguiente resultado:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
A continuación, inicie el servicio Nginx y habilítelo para que se inicie al reiniciar el sistema:
systemctl start nginx systemctl enable nginx
Ahora, verifique el estado del servicio Nginx con el siguiente comando:
systemctl status nginx
Configurar cortafuegos
A continuación, deberá permitir el puerto 80 a través del firewall. Puedes permitirlo con el siguiente comando:
firewall-cmd --permanent --zone=public --add-port=80/tcp
A continuación, vuelva a cargar el cortafuegos para aplicar los cambios:
firewall-cmd --reload
Una vez que haya terminado, puede continuar con el siguiente paso.
Acceder a la interfaz web de Sails.js
Ahora, abra su navegador web y acceda a la interfaz web de Sails.js usando la URL http://salis.dominio.com. Debería ver la página predeterminada de Sails.js en la siguiente pantalla:
Conclusión
¡Felicidades! Ha instalado correctamente Sails.js con Nginx como proxy inverso en CentOS 8. Ahora puede comenzar a desarrollar aplicaciones en tiempo real con Sails.