Jak nastavit aplikaci Node.js pro produkci na Rocky Linux 9

Jak nastavit aplikaci Node.js pro produkci na Rocky Linux 9

Úvod

Node.js je populární runtime prostředí pro vývoj back-endových a síťových aplikací pomocí jazyka JavaScript. Nabízí vysokou výkonnost, škálovatelnost a flexibilitu, což z něj činí ideální volbu pro budování moderních webových aplikací a služeb.

Abyste mohli nasadit aplikaci Node.js do produkce, je nezbytné ji správně nastavit a nakonfigurovat. Tento průvodce vás provede krok za krokem procesem nastavení aplikace Node.js pro produkci na Rocky Linux 9.

Instalace Node.js

Nejprve musíte nainstalovat Node.js do systému Rocky Linux 9. Existuje několik způsobů, jak toho dosáhnout:

Správce balíčků dnf

Můžete použít Správce balíčků dnf k instalaci stabilní verze Node.js.


sudo dnf install nodejs

NVM (Node Version Manager)

NVM je nástroj, který vám umožňuje spravovat více verzí Node.js na jednom systému. Chcete-li jej nainstalovat a použít, postupujte podle těchto pokynů:

  Jak identifikovat neznámý symbol jeho nakreslením


curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash


source ~/.bashrc


nvm install <verze Node.js>

Vytvoření aplikace Node.js

Po instalaci Node.js vytvořte novou aplikaci Node.js. Vytvořte adresář aplikace a inicializujte novou aplikaci pomocí nástroje npm:


mkdir moje-aplikace-node
cd moje-aplikace-node
npm init -y

Vytvořte soubor app.js a přidejte následující kód:

js
const express = require('express');
const app = express();

app.get('/', (req, res) => {
res.send('Ahoj, světe!');
});

app.listen(3000, () => {
console.log('Poslouchám na portu 3000');
});

Nasazení aplikace Node.js

Nginx jako reverzní proxy

Nginx je populární webový server, který lze použít jako reverzní proxy pro vaši aplikaci Node.js. Nainstalujte Nginx pomocí Správce balíčků dnf:


sudo dnf install nginx

Upravte konfigurační soubor Nginx /etc/nginx/nginx.conf a přidejte následující blok:


server {
listen 80;
server_name moje-aplikace-node.example.com;

location / {
proxy_pass http://localhost:3000;
}
}

Systemd jako správce služeb

Systemd je výchozí správce služeb pro Rocky Linux 9. Vytvořte soubor jednotky pro vaši aplikaci Node.js:


sudo nano /etc/systemd/system/moje-aplikace-node.service

Přidejte následující obsah:


[Unit]
Description=Moje aplikace Node.js
After=network.target

[Service]
ExecStart=/usr/bin/node /moje-aplikace-node/app.js
ExecStop=/usr/bin/pm2 delete moje-aplikace-node
Restart=on-failure
RestartSec=10

[Install]
WantedBy=multi-user.target

Spusťte aplikaci Node.js:


sudo systemctl start moje-aplikace-node

Balíčkování aplikace Node.js (volitelné)

Pokud chcete nasadit svou aplikaci Node.js jako balíček RPM, můžete použít nástroj rpm-builder.


sudo dnf install rpm-builder

Vytvořte soubor SPEC:


Name: moje-aplikace-node
Version: 1.0.0
Release: 1
Summary: Moje aplikace Node.js
License: MIT
BuildRequires: nodejs

%description
Moje aplikace Node.js

%files
/moje-aplikace-node

Spusťte příkaz rpmbuild:


rpmbuild -bb moje-aplikace-node.spec

Monitorování a údržba

Abyste zajistili bezproblémový chod vaší aplikace Node.js, je důležité ji monitorovat a udržovat.

Monitorování

Použijte nástroj jako PM2 nebo node-monitor k monitorování vaší aplikace Node.js. Tyto nástroje poskytují informace o využití prostředků, chybách a výkonu.

Údržba

Pravidelně aktualizujte svou aplikaci Node.js a závislosti. Zálohujte také svou aplikaci a konfiguraci pro zotavení po havárii.

Závěr

Úspěšně jste nastavili aplikaci Node.js pro produkci na Rocky Linux 9. Následující kroky vám pomohou zajistit plynulý chod vaší aplikace:

* Monitorujte výkon aplikace a řešte případné problémy.
* Pravidelně provádějte aktualizace a zálohování.
* Používejte nejlepší postupy pro zabezpečení a ladění.
* Upravte svou architekturu nasazení podle potřeby, například použitím clusterování nebo správy zátěže.

Dodržováním těchto doporučení můžete zajistit, že vaše aplikace Node.js bude spolehlivá, škálovatelná a bezpečná.

Časté dotazy

Q: Jakou verzi Node.js použít pro produkci?
A: Doporučuje se používat nejnovější stabilní LTS (dlouhodobou podporu) verzi Node.js.

Q: Je nutné používat Nginx pro reverzní proxy?
A: Nginx není povinný, ale je doporučený pro lepší výkon a zabezpečení.

Q: Jak mohu upravit port, na kterém moje aplikace Node.js poslouchá?
A: Změňte číslo portu v souboru app.js a restartujte aplikaci.

Q: Jak mohu nakonfigurovat správu protokolu pro moji aplikaci Node.js?
A: Použijte knihovnu třetích stran, jako je Winston nebo pino, pro správu protokolů.

Q: Jak mohu škálovat svou aplikaci Node.js?
A: Zvažte použití clusterování nebo správy zátěže, abyste mohli škálovat svou aplikaci horizontálně.

Q: Jaké jsou nejlepší postupy zabezpečení pro aplikace Node.js?
A: Přečtěte si doporučení OWASP týkající se Node.js a implementujte techniky, jako je ověřování vstupů, filtrace SQL a ochrana před útoky CSRF.

Q: Jak mohu ladit svou aplikaci Node.js?
A: Použijte nástroje jako node-inspector nebo debug-brk k ladění vaší aplikace a identifikaci chyb.

Q: Kde najdu další informace o implementaci Node.js?
A: Přečtěte si dokumentaci Node.js web a prozkoumejte npmjs pro knihovny třetích stran.