Develoka

Baca Artikel

  •     Lihat Daftar Artikel
  • Mengelola banyak versi node dalam satu mesin dengan NVM

    Berkenalan dengan Node Version Manager

    by rmdwirizki — Posted on May 12, 2018

    Beberapa kali saya menemui dokumentasi sebuah open source project dengan requirement versi node yang berbeda-beda. Contohnya Ionic, disitu ditulis "Be sure to install the LTS version of Node". Ada juga project yang menargetkan khusus dengan rentang versi node secara spesifik, misal 6.x atau >=9. Masih untung jika versi di requirement-nya lebih tinggi, walaupun merepotkan kita masih bisa upgrade versi node secara manual, tapi kalo harus downgrade?. Belum lagi jika banyak project lokal di mesin kita yang membutuhkan dependencies dari situ.

    Salah satu solusinya adalah dengan memasang node melalui program yang bernama NVM (Node Version Manager). NVM sebenarnya hanya berisi script sederhana yang berfungsi mengelola direktori, symlink, atau environment variable miliki node di sistem operasi. Hasil akhir instalasi nvm kira-kira akan seperti berikut.

    Direktori Instalasi NVM

    Jadi kita bisa memilih untuk menggunakan versi node dan versi npm yang berbeda-beda dalam satu mesin.

    Tenang saja, package npm yang bersifat global (yang diinstall dengan perintah npm install -g) tidak akan hilang ketika pindah versi node yang lain karena masih tersimpan dalam folder versi node sebelumnya.

    Instalasi

    MacOS

    Untuk proses instalasi di MacOS kamu bisa cek langsung di github-nya. Atau baca tutorial ini.

    Langkah pertama, download dulu script-nya.

    $ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
    

    Ubah v.0.33.11 dengan versi terbaru nvm, bisa dlihat di halaman berikut.

    Kemudian tambah kan line berikut ke ~/.bash_profile, ~/.zshrc, ~/.profile, atau ~/.bashrc.

    export NVM_DIR="$HOME/.nvm"
    [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
    

    Terus ketik lagi di console.

    $ source ~/.bashrc
    

    Linux (Ubuntu)

    Untuk Linux saya rekomendasikan baca tutorial digital ocean yang ini. Sebenernya ngga jauh beda sih caranya tapi untuk linux ada beberapa package tambahan yang mesti di download dulu.

    Pertama download dulu dependencies yang dibutuhin dari repository dilanjut sama download script NVM.

    $ sudo apt-get update
    $ sudo apt-get install build-essential libssl-dev
    $ curl -sL https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh -o install_nvm.sh
    

    Ubah v.0.33.11 dengan versi terbaru nvm, bisa dlihat di halaman berikut.

    Terus install scriptnya dilanjut sama beritahu perubahan session ke sistem.

    $ bash install_nvm.sh
    $ source ~/.profile
    

    NVM akan berada di folder ~/.nvm.

    Windows

    Khusus untuk pengguna windows, kita harus menggunakan script dari sumber yang berbeda. Namanya nvm-windows. Cara instalasinya lebih praktis karena sudah disediakan installer-nya. Silakan unduh di tautan berikut. Pilih yang nvm-setup.zip. Ekstrak dan jalankan .exe-nya.

    Kalo berhasil maka nvm akan ter-install di folder C:\Users\[nama_user]\AppData\Roaming\nvm.

    Menggunakan NVM

    Melihat versi node yang tersedia untuk diinstall

    Bisa lihat daftarnya pada halaman download di nodejs.org. Atau lihat di terminal dengan perintah berikut.

    # MacOS/Linux
    $ nvm ls-remote
    # Windows
    $ nvm list available
    

    Menginstall node versi tertentu

    # Format
    $ nvm install 
    # Contoh:
    $ nvm install 8.8.1
    $ nvm install 10.0.0
    
    # Atau untuk install versi terbaru bisa langsung
    # MacOS/Linux
    $ nvm install node
    # Windows
    $ nvm install latest
    

    Melihat versi node yang sudah terinstall

    # MacOS/Linux
    $ nvm ls
    # Windows
    $ nvm list
    

    Mengubah versi node

    $ nvm use 
    

    Screenshot

    Contoh screenshot dari penggunaan perintah list dan use. Versi node akan otomatis berubah ketika kita menggunakan perintah use.

    Screenshot ubah versi node

    Untuk perintah lengkapnya kalian bisa cek didokumentasi github-nya masing-masing, baik di MacOS/Linux atau di Windows atau liat dengan perintah nvm help.

    Update untuk pengguna Windows

    Sejak tahun 2017, ada bug yang harus dibereskan secara manual, masalahnya hanya karena path direktori yang kepanjangan. Path yang terlalu panjang tidak didukung oleh sistem operasi windows sehingga kita harus mengubah folder letak instalasi nvm dari yang tadinya di C:\Users\[nama_user]\AppData\Roaming\nvm menjadi C:\nvm atau D:\nvm (lihat issue github-nya disini).

    Caranya, buka command prompt sebagai Administrator (elevated command prompt). Kemudian jalankan perintah berikut.

    # Masuk ke root drive
    cd C:\
    # Buat folder nvm
    mkdir nvm
    # Ubah root folder nvm ke folder tadi
    nvm root C:\nvm
    # Pindahkan semua isi nvm dari folder sebelumnya
    copy /Y %APPDATA%\nvm\* C:\nvm