Kuinka ottaa PM2 käyttöön käynnistämään Node.js-sovellus automaattisesti järjestelmän käynnistyksen yhteydessä
PM2 on tehokas, laajalti käytetty ja monipuolinen tuotantovalmis prosessinhallinta Node.js:lle. PM2:n uudelleenkäynnistys sen hallitsemilla prosesseilla aina, kun palvelin käynnistyy/uudelleenkäynnistetään, on tärkeää. Yksi PM2:n tärkeimmistä ominaisuuksista on tuki käynnistysskriptille (luodettu dynaamisesti palvelimesi oletusaloitusjärjestelmän perusteella), joka käynnistää PM2:n ja prosessisi uudelleen jokaisen palvelimen uudelleenkäynnistyksen yhteydessä.
Aloitusskripti määrittää PM2:n palveluksi init-järjestelmän alaisuudessa. Kun palvelin käynnistyy uudelleen, se käynnistää automaattisesti PM2:n, joka käynnistää sitten uudelleen kaikki hallinnoimansa Node.js-sovellukset/prosessit.
Tässä artikkelissa näytämme, kuinka PM2 otetaan käyttöön palveluna, jolla voit hallita luotettavasti Node.js-sovelluksiasi. Tässä oppaassa testijärjestelmä käyttää systemd-palvelua ja järjestelmänhallintaa. Kaikki tämän artikkelin komennot suoritetaan root-komentoina (käytä sudoa tarvittaessa, jotta käyttäjä, jolla on käyttöoikeudet, voi kutsua sen).
Luo PM2-aloitusskripti Init-järjestelmälle
PM2 on suunniteltu toimimaan oletusarvoisen init-järjestelmän kanssa Linux-järjestelmässä (jonka se voi tunnistaa automaattisesti) käynnistysohjelman luomiseksi ja PM2:n määrittämiseksi. > palveluna, joka voidaan käynnistää uudelleen järjestelmän käynnistyksen yhteydessä.
Luo käynnistysskripti suorittamalla seuraava komento pääkäyttäjänä:
pm2 startup
Startup-alikomento käskee PM2:ta havaitsemaan käytettävissä olevan aloitusjärjestelmän, luomaan määritykset ja ottamaan käynnistysjärjestelmän käyttöön.
Voit myös määrittää init-järjestelmän nimenomaisesti seuraavasti:
pm2 startup systems
Varmista, että PM2-käynnistyspalvelu on käytössä systemd-tilassa, suorittamalla seuraava komento (korvaa pm2-root.service varsinaisella komennolla palvelun nimi, tarkista edellisen komennon tulos):
systemctl status pm2-root.service
Käynnistä Node.js Applications/Processes
Seuraavaksi haluat käynnistää Node.js-sovelluksesi käyttämällä PM2:ta seuraavasti. Jos sinulla on ne jo käytössä PM2:n kautta aloitettuina, voit ohittaa tämän vaiheen:
cd /var/www/backend/api-v1-staging/
pm2 start src/bin/www.js -n api-service-staging
Seuraavaksi sinun on rekisteröitävä/tallennettava nykyinen luettelo prosesseista, joita haluat hallita PM2:lla, jotta ne alkavat syntyä uudelleen järjestelmän käynnistyksen yhteydessä (aina kun se on odotettavissa tai palvelimen odottamaton uudelleenkäynnistys) mennessä. seuraavan komennon suorittaminen:
pm2 save
Tarkista PM2:n automaattinen käynnistys Node.js-sovellukset käynnistyksen yhteydessä
Lopuksi sinun on testattava, toimiiko asennus hyvin. Käynnistä järjestelmä uudelleen ja tarkista, ovatko kaikki Node.js-prosessisi käynnissä PM2:ssa.
pm2 ls
or
pm2 status
Huomaa, että voit elvyttää prosesseja manuaalisesti suorittamalla seuraavan komennon:
pm2 resurrect
Poista käynnistysjärjestelmä käytöstä
Voit poistaa käynnistysjärjestelmän käytöstä suorittamalla unstartup-alikomennon kuvan mukaisesti.
pm2 unstartup
OR
pm2 startup systemd
Päivitä käynnistysskripti ensin poistamalla se käytöstä ja käynnistämällä se sitten uudelleen kuvan osoittamalla tavalla.
pm2 unstartup
pm2 startup
Viite: PM2 Startup Script Generator.