Pernah dengar NVM?

Biasanya kita diminta untuk menggunakan NVM untuk menginstal Nodejs. Tapi sebenarnya bukan itu fungsi utamanya.

Lalu apa donk?

Mari kita bahas…

Apa itu NVM?

NVM merupakan singkatan dari Node Version Manager. NVM adalah sebuah program yang akan membantu kita menggunakan lebih dari satu versi Nodejs di dalam satu komputer.

Sebenarnya di Linux juga sudah ada program yang serupa seperti NVM, yakni update-alternative fungsinya untuk menentukan versi binary yang akan digunakan untuk perintah tertentu.

Saya pernah coba ini untuk Java:

update-alternative bisa juga kita gunakan untuk Nodejs, tapi cara pakainya–menurut saya–cukup ribet.

Sementara NVM lebih mudah.

Karena:

Selain untuk menentukan versi Nodejs yang akan digunakan, NVM juga akan membantu kita menginstalnya dan tentunya terupdate dengan versi resmi yang dari website Nodejs.

NVM untuk Manajemen Versi Nodejs

Mengapa Butuh NVM?

Kita butuh NVM saat kita membutuhkan Nodejs versi tertentu.

Contoh nih:

Kemarin saya coba membuat proyek Reactjs dengan create-react-app, tapi gagal. Karena Nodejs yang terinstall di komputer saya masih versi 11.2.0 dan ini menyebabkan error.

Soalnya ada paket Nodejs yang mengharuskan untuk menggunakan versi tertentu, yakni typescript-eslint.

typescript-eslint membutuhkan Nodejs versi ^8.10.0 (8 ke atas) atau ^10.13.0 atau di atas 11.10.1.

Error karena versi nodejs masih

Mau upgrade dan install nodejs pakai apt-get, tapi versinya belum terupdate di repo Ubuntu.

Maka dari itu, kita membutuhkan bantuan NVM untuk menginstal Nodejs dengan Versi tertentu.

Instalasi NVM

Cara install NVM dapat dilakukan dengan beberapa cara. Ini tergantung di mana kita akan menggunakannya.

Instalasi di Bash

Bash adalah shell defautl di Linux, berikut ini perintah untuk install NVM pada bash.

# menggunakan curl
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.2/install.sh | bash

# atau bisa juga menggunakan wget
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.2/install.sh | bash

Install NVM di Fish Shell

Fish Shell adalah shell favorit saya, karena mudah digunakan dan punya tema dan auto complete yang keren.

NVM di Fish Shell dapat kita install dengan fisher1. Berikut ini perintahnya:

fisher add FabioAntunes/fish-nvm
fisher add edc/bass

Install melalui Zsh

Zsh adalah salah satu Shell yang hampir sama seperti Fish Shell. Ia juga punya fitur-fitur keren.

Berikut ini perintah untuk menginstal NVM di ZSH:

omf install https://github.com/FabioAntunes/fish-nvm
omf install https://github.com/edc/bass

Instal di Alpine Linux

Aplpine Linux adalah distro linux yang ukurannya kecil, biasanya digunakan pada Docker untuk deploy aplikasi.

Berikut ini perintah untuk mengisntal NVM pada Alpine Linux:

apk add -U curl bash ca-certificates openssl ncurses coreutils python2 make gcc g++ libgcc linux-headers grep util-linux binutils findutils
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.2/install.sh | bash

Install di Windows:

Jika ingin menginstal NVM di Windows, kita harus mendownload installer-nya di https://github.com/coreybutler/nvm-windows

Versifikasi

Setelah kita menginstal NVM, selanjutnya coba pastikan apakah sudah terinstal dengan benar atau tidak.

Silahkan ketik perintah berikut:

command -v nvm
nvm --version

Jika tampil seperti ini:

Versi NVM yang terinstall

Artinya NVM sudah tersintal dengan benar, selanjutnya kita tinggal pakai saja.

Oke, kalau gitu.. mari ktia belajar:

Cara Pakai NVM

NVM adalah program berbasis teks, ia digunakan pada CLI (Command Line Interface).

Berikut ini beberapa perintah dasar NVM yang harus kamu ketahui:

Melihat list Nodejs yang ada di server

Kita bisa melihat daftar versi Nodejs yang ada di server dengan perintah:

nvm ls-remote

Maka hasilnya:

Melihat daftar versi Nodejs di server

Dengan begini, kita akan tahu versi mana yang harus diinstal.

Melihat Nodejs yang Sudah Terinstal

Untuk melihat daftar Nodejs yang sudah terinstal di komputer, maka perintahnya:

nvm list

Hasilnya:

Versi Nodejs yang sedang digunakan

Di Komputer saya baru ada Nodejs versi 12.14.0 dan versi ini sedang saya gunakan.

Menggunakan Nodejs versi yang berbeda

Jika ingin menggunakan Nodejs versi yang lain, kita bisa mengubahnya dengan NVM.

Ketik saja perintah ini:

nvm use v.12.14.0
  • v.12.14.0 adalah versi Nodejs yang akan digunakan.

Setelah menjalankan perintah ini, sekarang coba ketik perintah node --version untuk memastikan versi Nodejs yang sedang digunakan.

Versi Nodejs yang sedang digunakan

Menjalankan Aplikasi Nodejs dengan Versi Tertentu

Berkat NVM, kita bisa menentukan versi Nodejs yang akan digunakan untuk menjalankan aplikasi.

Caranya, ketik saja perintah berikut:

nvm run v12.13.1  app.js
  • v12.13.1 adalah versi nodejs yang akan digunakan untuk menjalankan app.js
  • app.js adalah program Nodejs.

Menghapus Versi Nodejs

Jika ada Nodejs yang sudah tidak terpakai lagi, maka kita bisa menghapusnya dengan perintah:

nvm uninstall v11.10.1

Maka Nodejs v11.10.1 akan dihapus.

Akhir Kata…

Nah itulah cara menggunakan NVM untuk manajemen versi Nodejs yang akan digunakan.

Untuk perintah yang lainnya, dapat kamu lihat pada repositori NVM di Github.


  1. https://github.com/FabioAntunes/fish-nvm ↩︎