Hvernig á að virkja PM2 til að ræsa Node.js app sjálfkrafa við ræsingu kerfisins


PM2 er öflugur, mikið notaður og eiginleikaríkur, framleiðslu-tilbúinn vinnslustjóri fyrir Node.js. Það er mikilvægt að endurræsa PM2 með ferlunum sem það stjórnar í hvert skipti sem þjónninn þinn ræsir/endurræsir. Einn af lykileiginleikum PM2 er stuðningur við ræsingarforskrift (myndað á kraftmikinn hátt byggt á sjálfgefna init kerfinu á netþjóninum þínum), sem endurræsir PM2 og ferla þína við hverja endurræsingu netþjónsins.

[Þér gæti líka líkað við: Hvernig á að setja upp PM2 til að keyra Node.js öpp á framleiðsluþjóni ]

Upphafsforskriftin setur PM2 upp sem þjónustu undir init kerfinu. Þegar þjónninn endurræsir sig mun hann sjálfkrafa endurræsa PM2, sem mun síðan endurræsa öll Node.js forritin/ferlana sem hann stjórnar.

Í þessari grein munum við sýna þér hvernig á að dreifa PM2 sem þjónustu til að stjórna Node.js forritunum þínum á áreiðanlegan hátt. Fyrir þessa handbók notar prófunarkerfið kerfisþjónustu og kerfisstjóra. Allar skipanir í þessari grein verða keyrðar sem rót (notaðu sudo þar sem nauðsyn krefur fyrir notanda með réttindi til að kalla fram það).

Búðu til PM2 Start Script fyrir Init System

PM2 er hannað til að vinna með sjálfgefna init kerfinu á Linux kerfi (sem það getur greint sjálfkrafa) til að búa til ræsiforritið og stilla PM2 sem þjónustu sem hægt er að endurræsa við ræsingu kerfisins.

Til að búa til ræsingarforskriftina skaltu einfaldlega keyra eftirfarandi skipun sem rót:

# pm2 startup

Ræsing undirskipunin segir PM2 að greina tiltækt init kerfi, búa til stillingar og virkja ræsingarkerfið.

Þú getur líka sérstaklega tilgreint init kerfið þannig:

# pm2 startup systems

Til að staðfesta að PM2 ræsingarþjónustan sé í gangi undir systemd skaltu keyra eftirfarandi skipun (skipta um pm2-root.service með raunverulegu nafni þjónustunnar þinnar, athugaðu úttak fyrri skipunar):

# systemctl status pm2-root.service

Ræstu Node.js forrit/ferli

Næst viltu ræsa Node.js forritin þín með því að nota PM2 sem hér segir. Ef þú ert nú þegar með þá í gangi, byrjaðir í gegnum PM2, geturðu sleppt þessu skrefi:

# cd /var/www/backend/api-v1-staging/
# pm2 start src/bin/www.js -n api-service-staging

Næst þarftu að skrá/vista núverandi lista yfir ferla sem þú vilt stjórna með því að nota PM2 þannig að þeir hrogni aftur við ræsingu kerfisins (í hvert skipti sem búist er við því eða óvænt endurræsing netþjóns), með því að keyra eftirfarandi skipun:

# pm2 save

Staðfestu PM2 Auto Starting Node.js Apps við ræsingu

Að lokum þarftu að prófa hvort uppsetningin virkar vel. Endurræstu kerfið þitt og athugaðu hvort öll Node.js ferlin þín séu í gangi undir PM2.

# pm2 ls
or
# pm2 status

Athugaðu að þú getur endurvakið ferla handvirkt með því að keyra eftirfarandi skipun:

# pm2 resurrect

Slökktu á ræsingarkerfinu

Þú getur slökkt á ræsingarkerfinu með því að keyra unstartup undirskipunina eins og sýnt er.

# pm2 unstartup
OR
# pm2 startup systemd

Til að uppfæra ræsiforritið skaltu fyrst slökkva á því og byrja það síðan aftur eins og sýnt er.

# pm2 unstartup
# pm2 startup

Tilvísun: PM2 Startup Script Generator.