Cómo gestionar las versiones de NodeJS con n en Ubuntu 20.04
Si eres un desarrollador de Node.js que cambia con frecuencia entre varias aplicaciones y proyectos. Entonces puede que necesites encontrar una herramienta que te permita alternar entre versiones de Node.js. En Linux, existen numerosas utilidades para gestionar varias versiones de Node.js. Entre ellas, el gestor de versiones de Node es una herramienta sencilla y útil para gestionar las versiones de Node.js.
En este tutorial, te mostraremos cómo utilizar n para gestionar las versiones de Node.js en Ubuntu 20.04.
Requisitos previos
- Un servidor con Ubuntu 20.04.
- Una contraseña de root configurada en el servidor.
Cómo empezar
En primer lugar, se recomienda actualizar los paquetes del sistema a la última versión. Puedes actualizarlos todos con el siguiente comando:
apt-get update -y
Después de actualizar todos los paquetes, es posible que también tengas que instalar algunas dependencias necesarias en tu servidor. Puedes instalarlas todas con el siguiente comando:
apt-get install curl git make -y
Una vez instaladas todas las dependencias, puedes pasar al siguiente paso.
Instalar n
Hay varias formas de instalar n en Linux. La forma más sencilla y fácil de instalar n es utilizando npm.
Ejecuta el siguiente comando para instalar n:
npm install -g n
Si npm no está instalado en tu sistema, puedes instalarlo descargando el script n de GitHub:
curl -L https://raw.githubusercontent.com/tj/n/master/bin/n -o n
bash n lts
Esto instalará Node.js, npm y n en tu sistema. Por defecto, el script anterior no instala n en la ruta del sistema. Así que tendrás que añadirlo a la ruta de tu usuario.
nano ~/.bashrc
Añade las siguientes líneas:
export N_PREFIX=$HOME/.n export PATH=$N_PREFIX/bin:$PATH
Guarda y cierra el archivo y luego activa la ruta con el siguiente comando:
source ~/.bashrc
También puedes instalar n con el script n-install. Puedes descargar y ejecutar el script n-install como se muestra a continuación:
curl -L https://git.io/n-install | bash
A continuación, activa la ruta del sistema n con el siguiente comando:
source ~/.bashrc
Si quieres desinstalar n de tu sistema, ejecuta el siguiente comando:
n-uninstall
Para actualizar n a la última versión, ejecuta el siguiente comando:
n-update
Para comprobar la versión de n, ejecuta el siguiente comando:
n --version
Deberías obtener la siguiente salida:
7.3.0
Para comprobar todas las opciones disponibles con n, ejecuta el siguiente comando:
n --help
Deberías obtener el siguiente resultado:
Usage: n [options] [COMMAND] [args] Commands: n Display downloaded Node.js versions and install selection n latest Install the latest Node.js release (downloading if necessary) n lts Install the latest LTS Node.js release (downloading if necessary) nInstall Node.js (downloading if necessary) n install Install Node.js (downloading if necessary) n run [args ...] Execute downloaded Node.js with [args ...] n run [args ...] Execute downloaded node with [args ...] n which Output path for downloaded node n exec [args...] Execute command with modified PATH, so downloaded node and npm first n rm Remove the given downloaded version(s) n prune Remove all downloaded versions except the installed version n --latest Output the latest Node.js version available n --lts Output the latest LTS Node.js version available n ls Output downloaded versions n ls-remote [version] Output matching versions available for download n uninstall Remove the installed Node.js Options: -V, --version Output version of n -h, --help Display help information -p, --preserve Preserve npm and npx during install of Node.js -q, --quiet Disable curl output. Disable log messages processing "auto" and "engine" labels. -d, --download Download only -a, --arch Override system architecture --all ls-remote displays all matches instead of last 20 --insecure Turn off certificate checking for https requests (may be needed from behind a proxy server) --use-xz/--no-use-xz Override automatic detection of xz support and enable/disable use of xz compressed node downloads.
Gestionar las versiones de Node.j
Para instalar la última versión de Node.js, ejecuta el siguiente comando:
n latest
Deberías obtener la siguiente salida:
installing : node-v16.4.0 mkdir : /root/n/n/versions/node/16.4.0 fetch : https://nodejs.org/dist/v16.4.0/node-v16.4.0-linux-x64.tar.xz installed : v16.4.0 (with npm 7.18.1)
A continuación, comprueba la versión de Node.js con el siguiente comando:
node --version
Deberías obtener el siguiente resultado:
v16.4.0
Para instalar la versión de Node.js lts, ejecuta el siguiente comando:
n lts
Deberías obtener el siguiente resultado:
installed : v14.17.1 (with npm 6.14.13)
Para instalar la versión específica de Node.js, ejecuta el siguiente comando:
n 14.15.0
Deberías obtener el siguiente resultado:
installing : node-v14.15.0 mkdir : /root/n/n/versions/node/14.15.0 fetch : https://nodejs.org/dist/v14.15.0/node-v14.15.0-linux-x64.tar.xz installed : v14.15.0 (with npm 6.14.8)
Para descargar la versión específica de Node.js, ejecuta el siguiente comando
n -d 14.8.0
Deberías obtener el siguiente resultado:
installing : node-v14.8.0 mkdir : /root/n/n/versions/node/14.8.0 fetch : https://nodejs.org/dist/v14.8.0/node-v14.8.0-linux-x64.tar.xz
Para utilizar la versión de Node.js descargada, ejecuta el siguiente comando:
n run 14.8.0
Deberías ver la siguiente salida:
Welcome to Node.js v14.8.0. Type ".help" for more information.
A continuación, sal del shell de Node.js con el siguiente comando
> .exit
Para listar todas las versiones instaladas de Node.js, ejecuta el siguiente comando:
n ls
Deberías obtener la siguiente salida:
node/14.8.0 node/14.15.0 node/14.17.1 node/16.4.0
Para listar todas las versiones de Node.js disponibles, ejecuta el siguiente comando:
n ls-remote
Deberías obtener el siguiente resultado:
Listing remote... Displaying 20 matches (use --all to see all). 16.4.0 16.3.0 16.2.0 16.1.0 16.0.0 15.14.0 15.13.0 15.12.0 15.11.0 15.10.0 15.9.0 15.8.0 15.7.0 15.6.0 15.5.1 15.5.0 15.4.0 15.3.0 15.2.1 15.2.0
El comando anterior sólo mostrará 20 versiones disponibles. Si quieres listar todas las versiones de Node.js disponibles, ejecuta el siguiente comando:
n ls-remote --all
Para encontrar la ubicación de una versión específica de Node.js, ejecuta el siguiente comando:
n which node/14.8.0
Deberías obtener la siguiente salida:
/root/n/n/versions/node/14.8.0/bin/node
Para cambiar entre diferentes versiones de Node.js, ejecuta el siguiente comando:
n
Se te pedirá que selecciones la versión de Node.js que quieres cambiar:
node/14.8.0 node/14.15.0 ο node/14.17.1 node/16.4.0 Use up/down arrow keys to select a version, return key to install, d to delete, q to quit
Selecciona la versión de Node.js que desees y pulsa Intro para establecerla como versión por defecto.
Eliminar la versión de Node.js con n
Para eliminar una versión específica de Node.js, ejecuta el siguiente comando:
n rm node/16.4.0
Para eliminar todas las versiones de Node.js descargadas, ejecuta el siguiente comando:
n prune
Para eliminar todas las versiones de Node.js instaladas, ejecuta el siguiente comando:
n uninstall
Deberías ver la siguiente salida:
Do you wish to delete node and npm from /root/n? Y Uninstalling node and npm /root/n/bin/node /root/n/bin/npm /root/n/bin/npx /root/n/include/node /root/n/lib/node_modules/npm /root/n/share/doc/node /root/n/share/man/man1/node.1 /root/n/share/systemtap/tapset/node.stp
Conclusión
En la guía anterior, has aprendido a instalar y gestionar las versiones de Node.js utilizando n. Espero que esto te ayude a cambiar fácilmente entre diferentes proyectos y aplicaciones.