lifelong learner — urip iku urup, currently working on accenture.

Deploy node js pada vps

0
Degananda.com -

Untuk mendeploy sebuah project node terdapat berbagai pilihan. Pada ulasan ini akan dibahas mengenai forever yakni salah satu package/utility yang berfungsi untuk menjalankan project nodejs pada background. Hal – hal yang dibutuhkan adalah :

  1. VPS / Virtual private server (online server). Jika server tidak online kita tidak perlu menjalankannya secara background cukup lakukan biasa dengan perintah
    node nama.js
    dan tutup terminal ketika selesai digunakan. Forever digunakan karena server online 24 jam sehingga harus berjalan secara penuh pada backgorund.
  2. NodeJS
  3. File Project NodeJS
  4. FileZilla , digunakan untuk mengupload source code dari NodeJS
  5. RESTclient, untuk mengetes apakah web services telah terdeploy dan berjalan dengan baik (kasus aplikasi yang dihost adalah RESTful API).

mengapa menggunakan forever? karena forever adalah opensource / free ditambah lagi forever terdokumentasi dengan sangat lengkap dan mudah untuk dibaca serta cara penggunaanya yang simpel namun tetap dapat mengakomodasi task yang advanced.

1. Spesifikasi

kami menggunakan spesifikasi server dan sistem seperti dapat di lihat dibawah ini :

  1. Hosted @ digitalocean.com , RAM: 512 | 20 gb storage
  2. Operating system : Linux ubuntu server 14.04 LTS
  3. SSH
  4. Source code berupa : Web service (RESTful API) yang dibangun dengan menggunakan HAPI dan database mysql mengenai manajemen note. Anda dapat melihat cara pembuatan web services dibagian bawah ini.
  5. NodeJS versi : 6.9
  6. Mysql.

https://degananda.com/2017/06/02/membuat-restful-api-dengan-hapi-dan-mysql/

2. Installasi Forever ke system

jalankan perintah dibawah ini untuk melakukan installasi forever ke sistem(global).

npm install forever -g

setelah terinstall cobalah untuk menjalankan perintah dibawah ini

forever

maka akan muncul daftar perintah yang dapat digunakan dengan forever

berikut ini adalah beberapa perintah forever yang menurut kami memiliki prioritas untuk dimenegerti

nama perintah deskripsi
forever start nama_script.js untuk memulai deploy project nodejs pada background (running all the time) dengan menggunakan forever.
forever stop nama_script.js untuk menghenteikan project nodejs yang  telah berjalan pada background dengan menggunakan forever.
forever restartall untuk melakukan restart seluruh project nodejs yang telah berjalan dengan menggunakan forever.
forever list untuk melihat daftar project nodejs yang berjalan saat ini dengan forever. Ini sangat penting karena anda dapat melihat project mana saja yang sedang berjalan

 

3. Membuat folder untuk aplikasi nodejs dan upload project nodejs

buatlah folder khusus untuk menyimpan project-project nodejs. Namun jangan letakan di www atau html karena sangat riskan dalam segi keamanan. Setelah membuat folder maka gunakan file zilla untuk mengunggah folder project nodejs anda. Basicly , folder nodejs anda pasti memiliki folder node_modules.

jangan unggah folder tersebut karena folder tersebut memilki banyak sekali file akan menyebabkan proses penunggahan akan menjadi sangat lama sekali. Cukup unggah seluruh file dan folder tanpa folder node_modules tersebut. Lakukan pengunggahan menggunakan filezilla (rekomendasi kami) melalui sftp (lebih aman) kalau bisa hindari menggunakan ftp biasa.

4. install npm pada project

berdasarkan langkah ke-3 yang kita lakukan folder node_modules tidak kita lakukan installasi karena jika kita menunggah folder tersebut akan memakan waktu yang sangat lama. Tetapi, ada alasan lain dibalik itu. Versi nodejs pada komputer lokal belum tentu sama dengan versi nodejs yang ada pada server. Sehingga dengan melakukan perintah dibawah ini pada folder project nodejs yang baru saja kita upload

sudo npm install

akan menyesuaikan depedency dari package/module yang kita guanakan. Suppose pada local kita menggunakan versi node 5. Namun pada server kita menggunakan versi 6. Maka akan secara otomatis npm menyesuaikan dan mengenerate node_modules sesuai dengan versi nodejs pada server.

Namun jika terjadi conflict mau tidak mau kita harus menurunkan atau mengupgrade versi node. Jika anda belum mengetahui cara mengupgrade dan mendowngrade versi node dengan cepat maka dapat melihat ulasan dibawah ini :

https://degananda.com/2016/12/14/upgrade-nodejs-ke-versi-mana-saja/

5. Menjalankan forever pada project

setelah anda melalukan npm install, maka project nodejs anda telah siap untuk dijalankan. Perintah yang digunakan adalah

forever start ./project.js

setelah itu jalankan

forever list

untuk memastikan bahwa project nodejs anda telah berjalan dengan baik.

jika file project nodejs anda berada disalah satu list diatas maka selamat ! project nodejs anda telah berhasil terdeploy menggunakan forever.

5.1 melihat log project nodejs

Setiap instances forever akan memiliki uid sendiri, dan akan melakukan logging ke file yang telah tertera dicommand line. Log akan dimasukan ke suatu file karena log tidak akan tercatat pada console kita(saat melakukan ssh , instances nodejs berjalan pada background). Contohnya untuk forever 1426 pada gambar diatas seluruh log yang muncul pada console akan berada di folder /.forver/T7-1.log , kita dapat membuka file tersebut untuk melihat seluruh log yang anda (misalkan terjadi error ataupun untuk keperluan debugging).

isi dari log tersebut