Sails.js je Javascriptový framework pro Node.js. Používá se pro velmi rychlý vývoj aplikací v reálném čase. Umožňuje vám podobat se architektuře MVC z rámců jako Ruby on Rails. Dodává se s plány, které pomáhají nastartovat backend vaší aplikace bez psaní jakéhokoli kódu. Je kompatibilní s jinými front-endy včetně Angular, React, iOS, Android, Windows Phone, vlastním hardwarem nebo něčím úplně jiným.
V tomto příspěvku vám ukážeme, jak nainstalovat Sails.js s Nginx na CentOS 8
Předpoklady
- Server se systémem CentOS 8.
- Na serveru je nakonfigurováno heslo uživatele root.
Instalovat Node.js
Nejprve nainstalujte všechny požadované závislosti pomocí následujícího příkazu:
dnf install curl gcc-c++ make -y
Jakmile jsou nainstalovány všechny závislosti, přidejte zdrojové úložiště Node pomocí následujícího příkazu:
curl -sL https://rpm.nodesource.com/setup_16.x | bash -
Po přidání zdrojového úložiště Node nainstalujte soubor Node.js pomocí následujícího příkazu:
dnf install nodejs -y
Po dokončení instalace ověřte verzi Node.js pomocí následujícího příkazu:
node --version
Měli byste získat následující výstup:
v16.4.0
Instalovat Sails.js
Sails.js můžete nainstalovat pomocí příkazu NPM, jak je znázorněno níže:
npm -g install sails
Dále vytvořte svůj projekt pomocí Sails.js pomocí následujícího příkazu:
sails new myproject
Budete požádáni o výběr šablony pro vaši aplikaci:
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
Napište 2 a stiskněte Enter pro instalaci aplikace. Měli byste získat následující výstup:
info: Installing dependencies... Press CTRL+C to cancel. (to skip this step in the future, use --fast) info: Created a new Sails app `myproject`!
Spustit aplikaci Sails.js
Dále změňte adresář na myproject a spusťte aplikaci pomocí následujícího příkazu:
cd myproject
sails lift
Měli byste získat následující výstup:
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: -------------------------------------------------------
Stiskněte CTRL + C pro zastavení aplikace.
Vytvoření souboru služby Systemd pro Sails.js
Dále budete muset vytvořit soubor služby systemd pro správu vaší aplikace.
Můžete jej vytvořit pomocí následujícího příkazu:
nano /lib/systemd/system/sails.service
Přidejte následující řádky:
[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
Uložte a zavřete soubor a poté znovu načtěte démona systemd pomocí následujícího příkazu:
systemctl daemon-reload
Dále spusťte službu Sails a povolte její spuštění při restartu systému:
systemctl start sails
systemctl enable sails
Stav plachet můžete zkontrolovat pomocí následujícího příkazu:
systemctl status sails
Měli byste získat následující výstup:
? 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: -------------------------------------------------------
V tomto okamžiku se Sails spustí a naslouchá na portu 1337.
Nakonfigurujte Nginx jako reverzní proxy pro aplikaci Sails
Doporučuje se nainstalovat a nakonfigurovat Nginx jako reverzní proxy k vaší aplikaci Sails.
Nejprve nainstalujte balíček Nginx pomocí následujícího příkazu:
dnf install nginx -y
Po instalaci Nginx vytvořte konfigurační soubor virtuálního hostitele Nginx pro Sails:
nano /etc/nginx/conf.d/sails.conf
Přidejte následující řádky:
server { listen 80; server_name sails.domain.com; location / { proxy_pass http://localhost:1337/; proxy_set_header Host $host; proxy_buffering off; } }
Po dokončení uložte a zavřete soubor.
Dále ověřte Nginx, zda neobsahuje nějakou chybu konfigurace pomocí následujícího příkazu:
nginx -t
Měli byste získat následující výstup:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Dále spusťte službu Nginx a povolte její spuštění při restartu systému:
systemctl start nginx
systemctl enable nginx
Nyní zkontrolujte stav služby Nginx pomocí následujícího příkazu:
systemctl status nginx
Konfigurovat bránu firewall
Dále budete muset povolit port 80 přes bránu firewall. Můžete to povolit pomocí následujícího příkazu:
firewall-cmd --permanent --zone=public --add-port=80/tcp
Poté znovu načtěte bránu firewall, aby se změny projevily:
firewall-cmd --reload
Jakmile budete hotovi, můžete přejít k dalšímu kroku.
Přístup k webovému rozhraní Sails.js
Nyní otevřete webový prohlížeč a přejděte na webové rozhraní Sails.js pomocí adresy URL http://salis.domain.com . Na následující obrazovce byste měli vidět výchozí stránku Sails.js:
Závěr
Gratulujeme! úspěšně jste nainstalovali Sails.js s Nginx jako reverzní proxy na CentOS 8. Nyní můžete začít vyvíjet aplikace v reálném čase pomocí Sails.