Nếu bạn là lập trình viên Javascript hay cụ thể hơn là Nodejs, chắc hẳn ít nhiều đã nghe về NVM. Nói cơ bản thì NVM sinh ra để quản lý các phiên bản Node.js trên máy tính. Trong bài viết này chúng ta sẽ tìm hiểu rõ hơn về NVM là gì nhé.
NVM là gì?
Khái niệm và mục đích của NVM
Node.js ngày càng đa năng và phát triển mạnh mẽ hơn. Điều này vô hình chung làm cho việc quản lý và sử dụng phiên bản Node.js trở nên khó khăn. Như một lẽ tất yếu, chúng ta có thể có nhiều ứng dụng, và mỗi ứng dụng lại yêu cầu phiên bản Node.js khác nhau. Điều này phần nào đó rất khó khăn trong quá trình làm việc.
Chúng ta có thể khắc phục bằng cách sử dụng các môi trường ảo hóa như Docker hay cloud. Tuy vậy các giải pháp này cũng sẽ gây tốn sức và chi phí. Thay vào đó chúng ta có thể tìm hiểu về một giải pháp khác là NVM. Sau khi cài đặt NVM, chúng ta có thể dễ dàng cài đặt các phiên bản Node.js khác nhau và chọn phiên bản cần sử dụng cho ứng dụng của mình.
Tóm gọn lại thì, NVM (Node Version Manager) là một công cụ giúp quản lý các phiên bản của Node.js trên máy tính.
Về góc độ nào đó có lẽ nó sẽ hơi giống với venv trong lập trình Python.
NVM sinh ra để giúp cho lập trình viên dễ dàng chuyển đổi các phiên bản Node.js với nhau trong quá trình phát triển và kiểm thử phần mềm. Với NVM, bạn có thể dễ dàng cài đặt các phiên bản Node.js mới nhất để sử dụng các tính năng mới nhất và đồng thời vẫn có thể sử dụng các phiên bản cũ hơn để đảm bảo tính ổn định của ứng dụng.
Ưu điểm nổi bật của NVM
Đầu tiên và quan trọng nhất, chính là cho phép quản lý nhiều phiên bản Node.js. Chúng ta có thể dễ dàng chuyển đổi giữa các phiên bản Node.js thông qua NVM.
$ nvm use 16 Now using node v16.9.1 (npm v7.21.1) $ node -v v16.9.1 $ nvm use 14 Now using node v14.18.0 (npm v6.14.15) $ node -v v14.18.0 $ nvm install 12 Now using node v12.22.6 (npm v6.14.5) $ node -v v12.22.6
Nvm tương thích với Linux, Window và Macos. Việc cài đặt cũng tương đối dễ dàng và không có các vấn đề lỗi phát sinh đáng kể nào trong quá trình cài đặt. Để tham khảo thêm về NVM các bạn có thể tham khảo tại github nvm.
Với window bạn cũng có thể tại sẵn bản cài đặt exe tại đây: https://github.com/coreybutler/nvm-windows
Trong phần tiếp theo của bài viết, CodeTuTam cũng sẽ hướng dẫn các bạn cài đặt NVM trên máy tính của mình một cách đơn giản.
Với NVM bạn cũng dễ dàng cài đặt hoặc gỡ bỏ bất kì phiên bản Node.js nào. Việc này tuy nhỏ nhưng giúp ích khá nhiều trong quá trình tối ưu lại máy tính cũng như loại bỏ những phần mềm không cần thiết.
Hướng dẫn cài đặt NVM
Cài đặt NVM trên window
Nếu bạn sử dụng window, bạn có 1 sự lựa chọn thay thế khác là nvm-windows. Chú ý rằng 2 phiên bản này là khác nhau, về mục tiêu thì giống nhau, nhưng cách sử dụng sẽ có nhiều sự khác biệt. Đổi lại cho việc này bạn sẽ rất dễ dàng cài đặt mà không cần lo lắng gì cả.
Bạn có thể download bản cài đặt exe tại đây: https://github.com/coreybutler/nvm-windows/releases
Khi cài đặt, NVM sẽ tự động phát hiện các phiên bản Node.js sẵn có và hỏi bạn trước khi đưa vào phần quản lý của nó.
Nhiệm vụ của bạn là ấn Yes cho tới khi hoàn thành mà thôi
Cài đặt NVM thông qua github
Để cài đặt NVM chúng ta sử dụng tập lệnh được cung cấp sẵn theo cú pháp như sau
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
hoặc
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
Đoạn lệnh này sẽ clone github của nvm về thư mục ~/.nvm
Thêm vào biến môi trường
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
Các bạn xem chi tiết thêm trên github: https://github.com/nvm-sh/nvm#installing-and-updating
Hướng dẫn sử dụng cơ bản NVM
Để tải vài cài đặt phiên bản node mới nhất ta sử dụng lệnh
nvm install node
hoặc để chỉ định cài 1 phiên bản cụ thể
nvm install 14.7.0
Để chỉ định phiên bản node sử dụng ta dùng
nvm use node
hoặc
nvm run node --version
Tuy nhiên hãy chú ý rằng, sẽ có 1 vài sự khác biệt giữ nvm-sh và nvm-windows, hãy xem thật ký trước khi sử dụng nhé
Ví dụ với npm-windows để cài đặt phiên bản latest bạn sử dụng lệnh như sau
nvm install lts
Tổng kết
Cho dùng bạn sử dụng công cụ nào nvm-sh hay nvm-windows – được gọi chung là nvm. Mục đích chính của chúng là hỗ trợ quản lý các phiên bản Node.js. Điều này giúp thuận tiện hơn cho lập trình viên phát triển nhiều dự án node.js đồng thời mà yêu cầu sự khác biệt về môi trường cài đặt.