Node.js adalah runtime JavaScript open-source yang dirancang untuk pengembangan aplikasi sisi server. Dengan Node.js, pengembang dapat membangun fungsionalitas backend yang ringan, efisien, dan dapat diskalakan.
Panduan ini akan membahas cara menginstal Node.js dalam berbagai versi dan sistem operasi, sehingga Anda dapat menyesuaikan instalasi sesuai kebutuhan proyek Anda.
Debian dan Ubuntu #
Instruksi Instalasi #
Sebelum memulai instalasi Node.js, pastikan beberapa package berikut telah terinstal:
sudo apt-get install -y ca-certificates curl gnupg
Selanjutnya, jalankan skrip setup dari NodeSource untuk menentukan versi Node.js yang akan digunakan. Misalnya, untuk versi 20:
NODE_MAJOR=20
curl -fsSL https://deb.nodesource.com/setup_$NODE_MAJOR.x | sudo bash -
Versi Node.js yang tersedia:
NODE_MAJOR=16NODE_MAJOR=18NODE_MAJOR=20NODE_MAJOR=21NODE_MAJOR=22
Setelah setup selesai, jalankan perintah berikut untuk memperbarui repositori dan menginstal Node.js:
sudo apt-get update
sudo apt-get install -y nodejs
Uninstall Node.js #
Gunakan perintah berikut untuk menghapus instalasi Node.js beserta konfigurasi repository dari NodeSource:
sudo apt-get purge -y nodejs && \
sudo rm -f /etc/apt/sources.list.d/nodesource.list && \
sudo rm -f /etc/apt/keyrings/nodesource.gpg
purge akan menghapus paket nodejs beserta file konfigurasinya.
Pastikan Anda menggunakan sudo agar memiliki hak akses yang diperlukan.
RHEL (Red Hat Enterprise Linux) #
Instruksi Instalasi #
Jalankan skrip setup dari NodeSource untuk menentukan versi Node.js yang akan digunakan. Contoh untuk versi 20:
NODE_MAJOR=20
curl -fsSL https://rpm.nodesource.com/setup_$NODE_MAJOR.x | sudo bash -
Versi Node.js lain yang tersedia:
NODE_MAJOR=16NODE_MAJOR=18NODE_MAJOR=20NODE_MAJOR=21NODE_MAJOR=22
Instalasi build tools (opsional), berguna untuk membangun modul native:
sudo yum install -y gcc-c++ make
# atau: sudo yum groupinstall 'Development Tools'
Uninstall Node.js #
Gunakan perintah berikut untuk menghapus Node.js dan repository NodeSource:
sudo yum remove -y nodejs && \
sudo rm -f /etc/yum.repos.d/nodesource*.repo && \
sudo yum clean all
yum clean all akan membersihkan cache metadata dan paket yang tersimpan.
Gunakan sudo agar memiliki hak akses penuh untuk penghapusan file sistem.
NVM (Node Version Manager) #
NVM (Node Version Manager) adalah sebuah tool yang digunakan untuk menginstal dan mengelola berbagai versi Node.js.
Dengan NVM, Anda dapat dengan mudah:
- Menginstal beberapa versi Node.js
- Berpindah antar versi Node.js
- Menghapus versi Node.js yang sudah tidak diperlukan
Tool ini sangat berguna ketika bekerja pada beberapa project yang membutuhkan versi Node.js berbeda.
Instalasi NVM dan Node.js versi 24 #
Berikut adalah script bash untuk menginstal NVM dan Node.js versi 24:
# Download dan install NVM
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
# Memuat NVM tanpa perlu restart shell
\. "$HOME/.nvm/nvm.sh"
# Install Node.js versi 24
nvm install 24
# Verifikasi versi Node.js
node -v
# Output: v24.13.0
# Verifikasi versi npm
npm -v
# Output: 11.6.2
Mengatasi Error nvm: command not found
#
Jika setelah instalasi perintah nvm tidak dikenali, kemungkinan environment NVM belum dimuat secara otomatis.
Tambahkan baris berikut ke file ~/.bashrc:
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"
Setelah itu, jalankan perintah berikut atau buka terminal baru:
source ~/.bashrc
ð¡ Catatan: Jika Anda menggunakan zsh, tambahkan konfigurasi di file
~/.zshrcalih-alih.bashrc.
Menggunakan File .nvmrc (Opsional tapi Direkomendasikan)
#
Untuk project tertentu, Anda bisa menentukan versi Node.js menggunakan file .nvmrc.
24
Lalu jalankan:
nvm use
Jika versi tersebut belum terinstal:
nvm install
Cara ini sangat berguna untuk menjaga konsistensi versi Node.js antar developer.
Contoh Kombinasi yang Umum Dipakai #
# Gunakan NVM untuk Node.js
nvm install 24
nvm use 24
# Aktifkan Corepack untuk pnpm/yarn
corepack enable
ð¡ Best Practice: Gunakan NVM +
.nvmrc+ Corepack untuk workflow yang rapi dan konsisten di tim.
Referensi: