NATVPS.id – Nodejs adalah sebuah aplikasi cross-platform gratis dan open-source yang digunakan sebagai Javascript Runtime Enviroment. Nodejs menggunakan V8 Engine yang dikembangkan oleh Chromium untuk menjalankan Program javascriptnya. Pada Artikel kali ini Anda akan mempelajari cara Cara Install Project NodeJS pada Ubuntu NAT VPS. Kita Akan membangun sebuah http server berbasis javascript dengan library Express. Langsung Saja yuk Kita masuk ke materi artikel!
Prerequiresites
Pastikan sebelum mengikuti Tutorial Ini Anda sudah memenuhi beberapa Kebutuhan yang disebutkan dibawah ini:
- NAT VPS , Beli NAT VPS Indonesia Hanya di Hostdata.id
- Internet untuk remote ssh dan test project nodejs
- SSH Client
Pada kasus Ini Untuk IPv4 NAT, konfigurasi Port Domain forwading yang akan digunakan pada NAT VPS adalah sebagai berikut:
- IPv4 NAT: 102.33.123.44
- Port Forwading: 54432 ke port 3000
- Domain Forwading Protocol: TCP
Goals
Setelah mengikuti Artikel ini dengan baik, Anda diharapkan:
- Berhasil Melakukan instalasi nodejs dan npm package manager pada Linux
- Berhasil Membuat Simple Nodejs Project berbasis express.js
- Berhasil Melakukan library expressjs pada project nodejs
- Berhasil melakukan ekspose PORT nodejs melalui Domain Forwading
Login Ke Client Area
Untuk mengakses NAT VPS, harap masuk terlebih dahulu ke Client Area NAT VPS. Panduan login ke NAT VPS dapat ditemukan dalam artikel “Cara Membeli dan Login NAT VPS“. Setelah berhasil login, Anda akan diarahkan ke tampilan Client Area NAT VPS sebagai berikut:
Untuk pelanggan hostdata.id cara mengetahui kredensial yang digunakan di Client Area, mohon periksa email yang telah Anda terima setelah menyelesaikan pemesanan NAT VPS. Informasi kredensial yang telah dikirimkan mencakup username, password, dan tautan login ke Client Area. Struktur isi email kurang lebih seperti berikut:
Cara Install Project NodeJS pada Ubuntu NAT VPS
Masuk Terminal Shell NAT VPS melalui VPS
Gunakan aplikasi SSH client seperti cmd, Termius, Terminal, Termux, Putty, Tabby dan sejenisnya untuk terhubung ke terminal NAT VPS. Dalam kasus ini, kami menggunakan NAT SSH dengan PORT ssh yang telah kami lakukan domain forwading dari port 24949 mengarah ke port 22:
ssh [email protected] -p 24949
Selanjutnya, masukkan password SSH root. Jika kredensial yang dimasukkan benar, maka Anda akan melihat pesan selamat datang pada shell terminal:
Update Dependensi Linux
Sebelum masuk pada langkah instalasi nodejs, pastikan anda sudah melakukan update dan menginstall dependensi linux yang essential. Gunakan command berikut untuk melakukannya
sudo apt update && sudo apt install nano git htop curl wget -y
Instalasi Nodejs dan NPM
Langkah selanjutnya adalah melakukan instalasi nodejs, Pada kasus ini tidak menggunakan apt akan tetapi menggunakan bootstrap pada github library “n” untuk melakukan instalasi Nodejs.
curl -fsSL https://raw.githubusercontent.com/tj/n/master/bin/n | bash -s lts
Anda bisa melakukan install nodejs version manager dengan menginstall library n. untuk menginstall n Anda bisa gunakan command berikut untuk melakukan instalasi library secara global
npm install -g n
Mengenai library n Anda dapat periksa lebih lanjut melalui website library npm pada link berikut: https://www.npmjs.com/package/n .
Lanjut, periksa versi nodejs untuk memastikan nodejs sudah terinstall dengan command berikut:
node -v
Periksa juga versi npm untuk memastikan npm sudah terinstall dengan command berikut:
npm -v
Kurang lebih hasil dari eksekusi command berikut akan seperti screenshot berikut:
Membuat Project Nodejs
Pada langkah ini Anda akan membuat folder yang difungsikan sebagai workspace. Anda dapat membuat folder dengan command mkdir. dalam kasus ini kami membuat folder dengan nama projectnodejs.
mkdir projectnodejs
lalu masuk ke folder projectnodejs menggunakan command “cd”, dan saatnya masuk ke step selanjutnya.
cd projectnodejs
Inisiasi npm project
Command berikut digunakan untuk menginisiasi NPM project, setelah inisiasi dan Anda dapat menginstall library nodejs melalui npm untuk folder projectnodejs ini:
npm init -y
lalu install library expressjs sebagai library http server.
npm install express
Saatnya menambahkan kode. Buat file dengan nama server.js
touch server.js
Edit server.js menggunakan text editor seperti nano:
nano server.js
Copy kode dibawah ini dan masukkan di file server.js:
const express = require("express"); const app = express(); const PORT = Number(process.env.APP_PORT) || 3000; const APP_URL = "localhost"; app.get("/", (_req, res) => { res.json({ status: "OK", message: "selamat datang di nodejs project", data: [{ OK: "NO" }, { OK: "YES" }, 3, 4, 5, 6, 7, 8, 9], }); }); app.get("/hello", (_req, res) => { res.end("HALLO, Anda Mendapatkan Response dari Nodejs"); }); app.get("*", (_req,res) => res.status(404).end("HALAMAN TIDAK DITEMUKAN")) app.listen(PORT, () => { console.log("[RUNNING] NodeJS berhasil dijalankan!"); console.log(`[RUNNING] Listening On URL: ${APP_URL}:${PORT}`); });
Penjelasan: Pada Kode ini membuat 2 endpoint yaitu
/
dan/hello
dengan response nya adalah json response dan sebuah ascii response plain text. Kode ini juga melakukan listen ke port 3000.
Untuk menjalankan. Save dahulu filenya, kemudian jalankan server.js menggunakan node
node server.js
Bila kode berhasil dijalankan melalui nodejs akan menghasilkan response sebagai berikut:
bila VPS Anda memiliki IPv6 Dedicated Anda dapat mencoba mengunjungi Anda dan tambahkan port 3000. kurang lebih seperti berikut http://[2eeaf:ffff:211:2312:abcd:4321:6aa6:1]:3000/
Melakukan Domain Forwading menuju Port 3000
Dalam langkah ini, kita akan melakukan Domain Forwarding TCP ke port 3000. Silakan rujuk panduan “Penjelasan Domain Forwarding di NAT VPS” untuk petunjuk lebih lanjut. Dalam konfigurasi ini, saya mengarahkan Domain Forwarding dari port 54432 ke port 3000
Kemudian Lakukan Testing dengan mengunjungi IP Address NAT dengan port yang sudah dialokasikan sebelumnya (54432).
Penutup
Itulah Cara Install Project NodeJS pada Ubuntu NAT VPS. Bila pertanyaan atau kesulitan, silahkan bertanya di grup Telegram @IPv6Indonesia. Kami sangat mengapresiasi Feedback dari Pembaca.