Cara menginstal pm2 untuk menjalankan node.Aplikasi JS di server produksi

Cara menginstal pm2 untuk menjalankan node.Aplikasi JS di server produksi

PM2 adalah manajer proses produksi open source, canggih, efisien, dan lintas platform untuk Node.JS dengan penyeimbang beban bawaan. Ini bekerja di Linux, MacOS dan juga Windows. Ini mendukung pemantauan aplikasi, manajemen layanan/proses mikro yang efisien, menjalankan aplikasi dalam mode cluster, start dan shutdown aplikasi yang anggun.

Itu menjaga aplikasi Anda "hidup selamanya”Dengan restart otomatis dan dapat diaktifkan untuk memulai dari boot sistem, sehingga memungkinkan Ketersediaan tinggi (HA) Konfigurasi atau Arsitektur.

Terutama, PM2 memungkinkan Anda menjalankan aplikasi Anda mode cluster Tanpa membuat perubahan dalam kode Anda (ini juga tergantung pada jumlah inti CPU di server Anda). Ini juga memungkinkan Anda untuk dengan mudah mengelola log aplikasi, dan banyak lagi.

Selain itu, ia juga memiliki dukungan luar biasa untuk Mayor Node.JS Kerangka kerja seperti Cepat, Adonis JS, Layar, HAPI Dan lebih banyak lagi, tanpa perlu perubahan kode apa pun. PM2 sedang digunakan oleh perusahaan seperti itu IBM, Microsoft, Paypal, dan lebih banyak lagi.

Di artikel ini, kami akan menjelaskan cara menginstal dan menggunakan PM2 untuk berlari NodeJS Aplikasi di server produksi Linux. Kami akan membuat aplikasi untuk mendemonstrasikan beberapa fitur mendasar PM2 untuk Anda memulainya.

Langkah 1: Instal NodeJs dan NPM di Linux

1. Untuk menginstal versi terbaru Node.JS Dan NPM, Pertama, Anda perlu mengaktifkan repositori Nodesource resmi di bawah distribusi Linux Anda dan kemudian instal Node.JS Dan NPM paket seperti yang ditunjukkan.

Di debian/ubuntu

---------- Instal Node.JS V11.X ---------- $ curl -sl https: // deb.Nodesource.com/setup_11.x | sudo -e bash -$ sudo apt -get install -y nodejs ---------- Instal Node.JS V10.X ---------- $ curl -sl https: // deb.Nodesource.com/setup_10.x | sudo -e bash -$ sudo apt -get install -y nodejs 

Di Centos/Rhel dan Fedora

---------- Instal Node.JS V11.X ---------- $ curl -sl https: // rpm.Nodesource.com/setup_11.x | pesta - ---------- Instal Node.JS V10.X ---------- $ curl -sl https: // rpm.Nodesource.com/setup_10.x | pesta - 

Langkah 2: Buat Aplikasi NodeJS

2. Sekarang, mari kita buat aplikasi pengujian (kami akan menganggap ia memiliki sisi klien dan admin yang berbagi database yang sama), layanan microser akan berjalan di port 3000, Dan 3001 masing -masing.

$ sudo mkdir -p/var/www/html/app $ sudo mkdir -p/var/www/html/adminside $ sudo vim/var/www/html/app/server.JS $ SUDO VIM/VAR/WWW/HTML/ADMINSIDE/Server.JS 

Selanjutnya, salin dan tempel potongan kode berikut di server.JS file (ganti 192.168.43.31 dengan IP server Anda).

## Kode MainApp const http = membutuhkan ('http'); const hostname = '192.168.43.31 '; port const = 3000; server const = http.createServer ((req, res) => res.StatusCode = 200; res.setHeader ('tipe konten', 'teks/polos'); res.Akhir ('Ini adalah aplikasi utama!\N'); ); server.Listen (port, hostname, () => konsol.log ('server berjalan di http: // $ hostname: $ port/'); ); ## Kode Adminside const http = membutuhkan ('http'); const hostname = '192.168.43.31 '; port const = 3001; server const = http.createServer ((req, res) => res.StatusCode = 200; res.setHeader ('tipe konten', 'teks/polos'); res.Akhir ('Ini adalah sisi admin!\N'); ); server.Listen (port, hostname, () => konsol.log ('server berjalan di http: // $ hostname: $ port/'); ); 

Simpan file dan keluar.

Langkah 3: Instal Manajer Proses Produk PM2 di Linux

3. Versi stabil terbaru dari PM2 tersedia untuk diinstal melalui NPM seperti yang ditunjukkan.

$ sudo npm i -g pm2 

4. Sekali PM2 diinstal, Anda dapat memulai aplikasi node Anda menggunakan perintah berikut.

$ sudo node/var/www/html/app/server.JS $ SUDO NODE/VAR/WWW/HTML/ADMINSIDE/Server.JS 

Perhatikan bahwa, di lingkungan produksi, Anda harus memulainya menggunakan PM2, Seperti yang ditunjukkan (Anda mungkin tidak memerlukan perintah sudo jika aplikasi Anda disimpan di lokasi di mana pengguna normal telah membaca dan menulis izin).

$ sudo pm2 start/var/www/html/app/server.js $ sudo pm2 start/var/www/html/adminside/server.JS 
Mulai Aplikasi Nodejs Menggunakan PM2

Langkah 4: Cara menggunakan dan mengelola PM2 di Linux

5. Untuk memulai aplikasi dalam mode cluster menggunakan -Saya Bendera untuk menentukan jumlah instance, misalnya.

$ sudo pm2 start/var/www/html/app/server.JS -I 4 $ SUDO PM2 SKALA 0 8 #SCALE CLUSTER APP TO 8 PROSES 

6. Untuk mencantumkan semua aplikasi Node Anda (Proses/Microservices), jalankan perintah berikut.

Daftar $ sudo PM2 
Daftar semua aplikasi simpul yang dikelola PM2

7. Untuk memantau log, metrik khusus, memproses informasi dari semua proses dengan menjalankan perintah berikut.

$ sudo pm2 monit 
Pantau semua proses node

8. Untuk melihat detail proses simpul tunggal seperti yang ditunjukkan, menggunakan ID atau nama proses.

$ sudo pm2 menunjukkan 0 
Lihat detail aplikasi tunggal

Langkah 5: Cara Mengelola Aplikasi Node Menggunakan PM2 Di Linux

9. Berikut ini adalah daftar beberapa perintah manajemen proses umum (tunggal atau semua) yang harus Anda perhatikan.

$ sudo pm2 berhenti semua #stop semua aplikasi $ sudo pm2 stop 0 #stop proses dengan id 0 $ sudo pm2 restart semua #restart semua aplikasi $ sudo pm2 reset 0 #reset semua penghitung $ sudo pm2 hapus semua #kill dan hapus semua aplikasi $ $ sudo pm2 hapus 1 #kill dan hapus aplikasi dengan ID 1 

10. Untuk mengelola log aplikasi, gunakan perintah berikut.

$ sudo pm2 log #view log untuk semua proses $ sudo pm2 log 1 #view log untuk aplikasi 1 $ sudo pm2 log -json #view log untuk semua proses dalam format json $ sudo pm2 flush #flush semua logs 

11. Untuk mengelola proses PM2, gunakan perintah berikut.

$ sudo pm2 startup #enable pm2 untuk memulai dari sistem boot $ sudo pm2 startup systemd #or secara eksplisit tentukan systemd sebagai sistem startup $ sudo pm2 simpan #save daftar proses saat ini pada reboot $ sudo pm2 unstartup #disable pm2 dari mulai dari sistem boot $ sudo $ sudo pm2 unstartup #disable pm2 dari mulai dari sistem boot $ sudo Pembaruan PM2 Paket #Update PM2 

Langkah 6: Akses Aplikasi Node dari Browser Web

12. Untuk mengakses semua aplikasi Node Anda dari browser web jarak jauh, pertama -tama Anda perlu membuka port berikut pada firewall sistem Anda, untuk mengizinkan koneksi klien ke aplikasi seperti yang ditunjukkan.

-------- Debian dan Ubuntu -------- $ sudo ufw izinkan 3000/tcp $ sudo ufw izinkan 3001/tcp $ sudo ufw reload -------- Rhel dan Centos -------- # firewall-cmd --permanent --add-port = 3000/tcp # firewall-cmd --permanent --add-port = 3001/tcp # firewall-cmd --eload 

13. Kemudian akses aplikasi Anda dari browser web dengan URL ini:

http: // 198.168.43.31: 3000 http: // 198.168.43.31: 3001 
Akses aplikasi simpul dari browser

Terakhir, tetapi tidak kalah penting, PM2 adalah sistem modul sederhana yang dibangun untuk memperluas kemampuan intinya, beberapa modul termasuk PM2-Logrotate, PM2-Webshell, PM2-Server-Monit, dan banyak lagi-Anda juga dapat membuat dan menggunakan modul Anda sendiri.

Untuk informasi lebih lanjut, buka repositori PM2 GitHub: https: // github.com/unitech/pm2/.

Itu saja! PM2 adalah manajer proses tingkat produksi yang canggih dan efisien untuk Node.JS dengan penyeimbang beban bawaan. Di artikel ini, kami menunjukkan cara menginstal dan menggunakan PM2 untuk mengelola aplikasi nodeJS di Linux. Jika Anda memiliki pertanyaan, kirimkan untuk digunakan melalui formulir komentar di bawah ini.