Peatükk 15 · 15.5
Node.js-rakenduse seadistamine
Sinu majutuspakett ei tööta ainult PHP-ga. Setup Node.js App abil seadistad ise Node.js-rakenduse, näiteks Express-rakenduse või väikese API. Igale rakendusele saab oma Node.js-versiooni ja oma kausta.
Rakenduse loomine
- Klõpsa DirectAdminis jaotises Extra Features valikul Setup Node.js App.
- Klõpsa CREATE APPLICATION (1).
- Vali väljal Node.js version (1) versioon. Saad valida Node.js 9, 16, 20, 22 ja 24 vahel. Vaikimisi on valitud 16, kuid vali pigem uusim versioon, mida su rakendus toetab, sest 9 ja 16 enam uuendusi ei saa.
- Vali väljal Application mode Development või Production. See määrab muutuja NODE_ENV. Toimiva rakenduse jaoks vali Production.
- Sisesta väljale Application root (2) kaust, kuhu su rakenduse failid tulevad, näiteks apps/minurakendus. Vali kaust väljaspool public_html kausta.
- Vali väljal Application URL (3) domeen ja soovi korral tee, näiteks api, et saada sinudomeen.ee/api. Kui jätad tee tühjaks, töötab rakendus kogu domeenil.
- Sisesta väljale Application startup file (4) fail, millega su rakendus käivitub, näiteks app.js või server.js.
- Soovi korral lisa väljal Environment variables nupuga ADD VARIABLE oma seaded.
- Klõpsa CREATE.



Koodi üleslaadimine ja pakettide paigaldamine
- Laadi oma kood üles kausta, mille valisid väljal Application root. Kasuta selleks File Manager'it, FTP-d või Git'i (vt Failide üleslaadimine ja allalaadimine ja Git: oma veebilehe uuendamine repositooriumist).
- Kas selles kaustas on fail package.json? Mine siis tagasi Setup Node.js App juurde, klõpsa oma rakenduse juures pliiatsil, et seda muuta, ja klõpsa Run NPM Install. Paketid paigaldatakse siis automaatselt.
- Klõpsa Restart, et rakendus (uuesti) käivitada.
Pärast iga koodi muudatust klõpsa uuesti Restart. Vastasel juhul jääb käima vana versioon.
Hea teada
- Sinu rakendus peab kuulama pordil, mille server talle annab. Kasuta oma koodis process.env.PORT ja mitte kindlat pordinumbrit.
- Rakendus töötab sinu paketi piirides (CPU, mälu, protsessid, vt Resource Usage: CPU, mälu ja protsessid). Mahuka rakenduse jaoks vali suurem pakett.
- SSH-ga paketis (vt SSH Keys ja sisselogimine SSH abil) näed rakenduse akna ülaosas käsku, millega Terminal'is õige Node.js-versioon ja kaust aktiveerida. Pärast seda töötavad node ja npm nagu tavaliselt.
- Veebilehele, mille oled teinud sisulooja abil (staatiline HTML), ei ole Node.js vajalik. Selle laadid lihtsalt üles kausta public_html.
Korduma kippuvad küsimused
Mu rakendus annab vea 503.
Rakendus ei käivitu. Tavaliselt on käivitusfail vale, paketid puuduvad (Run NPM Install unustatud) või on koodis viga. Vaata oma rakenduse kaustas faili stderr.log, kus on veateade.
Kas mu rakendus võib töötada terve päeva?
Jah, kuni see jääb su paketi piiridesse. Rakendus käivitub, kui saabub päring, ja peatub mõne aja pärast, kui päringuid ei tule. Rakendus, mis peab alati töötama ilma külastajateta, näiteks bot, sobib paremini VPS-ile.
Mu rakendus on kinni jäänud ega reageeri käskudele Stop ega Restart.
Oota minut ja proovi uuesti. Kui see siis ikka ei õnnestu, loo tugipilet ja märgi ära oma rakenduse nimi.
