Node Version Manager (NVM), Gestionador de múltiples versiones activas de node.js

Node.js a pesar que esta en una versión ya estable, continua siendo objeto de dinámicos y constantes cambios y es posible que NO reparemos a revisar el tema de las versiones, lo cual puede impactar cuando desarrollamos para terceros.

Node.js® es un entorno de ejecución para JavaScript construido con el motor de JavaScript V8 de Chrome. Node.js usa un modelo de operaciones E/S sin bloqueo y orientado a eventos, que lo hace liviano y eficiente. El ecosistema de paquetes de Node.jsnpm, es el ecosistema mas grande de librerías de código abierto en el mundo.

Las liberación de nuevas versiones como ya lo habíamos mencionado, para este entorno de desarrollo son muy rápidas, lo que nos ha llevado en menos de 3 años de la versión 0.10 a 6.11.* ; recuerden que a esta fecha ya esta disponible la versión 8.

Es un escenario frecuente, que entre la ultima versión estable y la versión que algún cliente posee, existe ya una diferencia abismal. Existen varias formas de abordar este problema, crear una ambiente con las mismas condiciones del cliente, mediante un equipo destinado a esta funcion o creando maquinas virtuales, esta alternativa invita a incurrir en costos.

Otra solución posible es incluir en este punto a NVM que nos puede ayudar a salir del problema o atacarlo desde el inicio del desarrollo.

 

Node Version Manager (NVM)


NVM nos permite tener instaladas múltiples versiones de NodeJS. Como también ejecutar múltiples aplicaciones en un mismo servidor con diferentes versiones.

Node Version Manager (NVM): Es un Gestionador de múltiples versiones activas de node.js

A continuación te mencionamos algunas de las ventajas de utilizar NVM, para tus desarrollos:

  • Puede instalar node.js en cualquier usuario de su servidor, ya que no se requieren permisos de administrador. En Linux no se requiere sudo.
  • Puede tener diferentes paquetes globales para las diferentes versiones que este utilizando.
  • Puede hacer pruebas de como ejecutaría la aplicación en otra versión especifica, de una forma rápida y fácil.
  • En su propio ambiente de producción puede bloquear la versión que debe ejecutarse; esto lo agradeces cuando el equipo de infraestructura aplica parches y actualizaciones sin previo aviso.

 

¿Como puedo Implementarlo?

puedes consultar siempre el proyecto en GitHub, para visualizar la ultima versión y los pasos actualizados de instalación.

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash
nvm install node
nvm install v4.4.7
nvm install --lts 
command - v nmv

nvm ls-remote

Si hemos cambiado de versión de Node.JS, todos los paquetes globales que teníamos en la versión anterior ya no estarán disponibles, pero con este comando podemos reinstalar todos esos paquetes sin tener que ir uno a uno haciéndolo. En el sitio de GitHub esta es la practica recomendada para ahorrar tiempo.


nvm install 6 --reinstall-packages-from=5
nvm install v4.2 --reinstall-packages-from=iojs


nvm uninstall

Como se había mencionado en las ventajas, es que no se requiere tener permisos de administrador para instalarlo, por lo tanto, tampoco para retirarlo de nuestro sistema.

Todos los paquetes de NodeJS y sus diferentes versiones se almacenan bajo la carpeta principal del usuario, si estas en linux la ruta es /home/{usuario}/.nvm ; si usas Windows c:/Usuarios/{usuario}/.nvm

Si deseas asegurar una Des-Instalación total, basta con borrar esa carpeta y habrás des-instalado NVM.

 


links & referencias: 

Si deseas mas información o consultar las fuentes bibliográficas, aquí te dejamos…

 

Estudiante de la vida, buscando aprender…
Tu solo pregunta, si no tengo la respuesta… ya NO preguntaras solo…

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *