Gestión eficiente de tus instalaciones de NodeJS

La primera opción con la que nos topamos es la forma oficial de descarga e instalación de NodeJS, la cual podemos encontrar en la página oficial del proyecto. Esta nos provee de los fuentes o de los binarios para las distintas plataformas. El proceso es muy sencillo de completar, ya que es descargar, configurar el entorno y listo, pero tiene el problema de que toda la gestión de la instalación/actualización/desinstalación la tenemos que hacer nosotros manualmente.

Una segunda opción, si utilizamos por ejemplo Ubuntu, es hacer uso de un paquete para nuestro entorno e instalarlo desde un origen APT, permitiendo así la actualización o desinstalación de una forma sencilla. El problema en este caso viene si queremos tener varias versiones distintas de NodeJS.

Para solucionar este último problema de las múltiples versiones activas de NodeJS en un mismo host, NVM o Node Version Manager se presenta como una opción muy atractiva por su simplicidad y flexibilidad.

Su instalación consiste en la ejecución de un único comando:

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

Instalación de versiones

Una vez completada la instalación de NVM), sólo tenemos que indicarle qué versión de NodeJS queremos desplegar. Si no lo tenemos claro, una opción puede ser elegir la última estable:

1
nvm install stable

O si queremos una versión concreta, podemos especificarlo a la hora de ejecutar el comando de instalación:

1
nvm install v0.12.5

Consulta de las versiones instaladas

Si ya tenemos desplegadas una o múltiples versiones de NodeJS, podemos consultar la lista viendo de una forma destacada qué versión es la que tenemos actualmente en uso (v0.12.7 en el ejemplo siguiente):

1
2
3
4
5
6
$ nvm ls
v0.12.5
-> v0.12.7
node -> stable (-> v0.12.7) (default)
stable -> 0.12 (-> v0.12.7) (default)
iojs -> iojs- (-> N/A) (default)

Por otra parte, si queremos ver toda la lista completa de versiones disponibles, tanto de NodeJS como de IoJS, podemos hacerlo con nvm ls-remote:

1
2
3
4
5
6
7
8
9
10
11
12
$ nvm ls-remote
...
v0.12.3
v0.12.4
v0.12.5
v0.12.6
-> v0.12.7
...
iojs-v2.3.2
iojs-v2.3.3
iojs-v2.3.4
iojs-v2.4.0

Finalmente, todas las versiones instaladas están guardadas y organizadas en tu $HOME/.nvm y puedes conmutar entre ellas con un sólo comando:

1
$ nvm use v0.12.5