Kapitola 15 · 15.5
Nastavení Node.js aplikace
Váš hostingový balíček nepodporuje pouze PHP. Pomocí Setup Node.js App si sami nastavíte Node.js aplikaci, například Express aplikaci nebo menší API. Každá aplikace dostane vlastní verzi Node.js a vlastní složku.
Vytvoření aplikace
- V DirectAdmin klikněte v části Extra funkce na Setup Node.js App.
- Klikněte na CREATE APPLICATION (1).
- U položky Node.js version (1) vyberte verzi. Můžete vybrat z Node.js 9, 16, 20, 22 a 24. Výchozí je 16, zvolte ale raději nejnovější verzi, kterou Vaše aplikace podporuje, protože verze 9 a 16 už nedostávají aktualizace.
- U položky Application mode vyberte Development nebo Production. Tím se nastaví proměnná NODE_ENV. Pro ostrou aplikaci zvolte Production.
- U položky Application root (2) vyplňte složku, do které umístíte soubory aplikace, například apps/mojeaplikace. Zvolte složku mimo public_html.
- U položky Application URL (3) vyberte doménu a případně cestu, například api pro vasedomena.cz/api. Pokud cestu ponecháte prázdnou, aplikace poběží na celé doméně.
- U položky Application startup file (4) vyplňte soubor, kterým se aplikace spouští, například app.js nebo server.js.
- Pokud chcete, v části Environment variables přidejte pomocí ADD VARIABLE vlastní nastavení.
- Klikněte na CREATE.



Nahrání kódu a instalace balíčků
- Nahrajte svůj kód do složky, kterou jste zvolili u Application root, pomocí Správce souborů, FTP nebo Git (viz Nahrávání a stahování souborů a Git: aktualizace Vašeho webu z repozitáře).
- Je v této složce soubor package.json? Pak se vraťte do Setup Node.js App, klikněte u své aplikace na tužku pro úpravu a klikněte na Run NPM Install. Balíčky se tím nainstalují.
- Klikněte na Restart pro (opětovné) spuštění aplikace.
Po každé úpravě kódu znovu klikněte na Restart. Jinak bude nadále běžet stará verze.
Dobré vědět
- Vaše aplikace musí naslouchat na portu, který jí přidělí server. V kódu používejte process.env.PORT a ne pevné číslo portu.
- Aplikace běží v rámci limitů Vašeho balíčku (CPU, paměť, procesy, viz Resource Usage: CPU, paměť a procesy). Pro náročnější aplikaci zvolte větší balíček.
- U balíčku se SSH (viz SSH klíče a přihlašování přes SSH) najdete nahoře na obrazovce aplikace příkaz, kterým v Terminálu aktivujete správnou verzi Node.js a složku. Poté node a npm fungují jako obvykle.
- Web, který jste vytvořili pomocí generátoru stránek (statické HTML), Node.js nepotřebuje. Ten jednoduše nahrajete do public_html.
Časté dotazy
Moje aplikace vrací chybu 503.
Aplikace se nespouští. Většinou nesouhlasí spouštěcí soubor, chybí balíčky (zapomněli jste na Run NPM Install) nebo je v kódu chyba. Podívejte se do složky své aplikace do souboru stderr.log, kde najdete chybové hlášení.
Může moje aplikace běžet celý den?
Ano, pokud zůstane v rámci limitů Vašeho balíčku. Aplikace se spustí při příchozím požadavku a po určité době bez požadavků se zase zastaví. Aplikace, která musí běžet neustále bez návštěvníků, například bot, se lépe hodí na VPS.
Moje aplikace se zasekla a nereaguje na Stop ani Restart.
Počkejte minutu a zkuste to znovu. Pokud se to ani poté nepodaří, vytvořte tiket a uveďte název své aplikace.
