Hirdetés

Alap NodeJS szerver a Heroku-n

Ebben a blogbejegyzésben megmutatom, hogy hogyan készíthetsz el egy alap (default) Node.JS szervert a Herokun-n. Illetve a szerver környezeti változók használatát is bemutatom.

Hirdetés

De először röviden leírom, hogy mi az a Heroku, azok számára, akik nem ismerik.
A Heroku egy felhőplatform, amely lehetővé teszi különböző webalkalmazások futtatását és ezek számára szerver infrastruktúrát biztosítson.

Először is hozzunk létre a Githubon egy repo-t. Innen lehet majd feltölteni a Node.JS szerverfájlokat a Herokura.

A package.json fájlba beírhatjuk a webalkalmazásunk nevét, leírását, verziószámát és akár függőségeket adhatunk majd a Node.JS alkalmazásunkhoz.
A scripts.start-al hivatkozhatunk a szerverünk alapértelmezett fájljára.

A Heroku a futáshoz megkövetel egy Procfile-t is a képen látható sorral. Hozzuk ezt is létre a Git-en.

Írjuk meg a Node.JS szerverfájl, úgy, ahogy az localhost-on történő használat esetén is szeretnénk tenni, benne a legfontosabb adatokkal, mint a működési port.

Látogassunk el a Heroku.com oldalra és regisztráljunk, ha még nem tettük volna.
Az adminisztrátori felületen a New opciót használva hozhatunk létre webalkalmazást egyedi elnevezéssel. Akár saját domaint is hozzáadhatunk. Ingyenes csomagban 5 appot tudunk létrehozni.

Kiválaszthatjuk a szervert, hogy az alkalmazásunk melyik régióban működjön. Célszerű azt a régiót használni, ahonnan az alkalmazásunkat a legtöbben el szeretnék érni.

Ha létrehoztuk az alkalmazásunkat, kattintsunk rá, majd a settings rész alatt adjuk hozzá a build-pack-et, amivel használni szeretnénk.
A képen látható, hogy Node.JS mellett PHP, Java, Python, Ruby, Go és pár egyéb pack is használható.
Nekünk most a Node.JS kell.

A fiókbeállításpk alatt kapcsoljuk hozzá a Github fiókunkat a Herokuhoz.

Ismét az applikácóra kattintva válasszuk a "Deploy" lehetőséget.
Deploy Method legyen a Github. A Connect to Github résznél megkereshetjük a repo-t, amit fel szeretnénk tölteni a Herokura. Itt válasszuk azt a repo nevet, amiben a fent ismertetett package.json, Procfile és index.js fájlokat létrehoztuk.

Válasszuk ki, hogy melyik branch-et szeretnénk hozzáadni (alapértelmezetten a master vagy main szokott lenni). Kattintsunk a Deploy Branch gombra.
A fentebb található Enable Automatic Deploys gombbal automatizálhatjuk is a folyamatot.

Ezt látjuk ha elindult a deploy. Ez egy kis időt vesz igénybe. Ha a Build succeeded feliratot látjuk a logokban, akkor már a finishben vagyunk.

Kattintsunk a View Deploy vagy az Open App gombokra az alkalmazásunk megnyitásához. Ha mindent jól csináltunk, akkor ez a Hello World felirat fogad minket.

Settings->Config Vars alatt úgynevezett szerverkörnyezeti változókat adhatunk az alkalmazásunkhoz.
Ide olyan szenzitív adatokat célszerű megadni, amit a gitre nem tennénk ki. Például egy adatbázishoz szükséges kapcsolódási adatok, jelszavak, tokenek.

A Node.JS esetén a process.env.variablename -el tudunk hivatkozni az egyes változókra. Jelen esetben úgy alakítottam át a kódot,hogy az ownvar nevű környezeti változóm értékét jelenítse meg.

Az alkalmazásunkat újra Deploy-olva és frissítve a böngészőablakot már megjelenik a változtatás.

A NodeJS-ben consol-ozott logok nem a büngésző devtools-ában jelennek meg, hanem a szerver oldali naplófájlban. A Herokuban ez a napló More gomb lenyíló menüjében érhető el.

A Devtools-on csak a Node.JS által generált HTML kimenetet láthatjuk.

A bejegyzésben bemutatott repot itt éred el. Ha nem szeretnél kódolni, csak gyorsan kipróbálnád, akkor csak klónozd le és hozzákapcsolva a Heroku alkalmazásodhoz, máris használhatod és kedvedre változtathatod.
[link]

Ajánlom figyelmedbe még [Facebook csoportunkat] [Youtube csatornánkat] és [Discord szerverünket] továbbá van webfejlesztéssel foglalkozó Messenger csoportunk is.

Tovább a fórumba.