Node.js en Ubuntu: instala una versión con soporte

Índice de contenido
  1. Comprueba qué tienes instalado
  2. Desarrollo con nvm
  3. No mezcles desarrollo con el Python o Node del sistema
  4. Crea un servidor de prueba
  5. Dependencias reproducibles
  6. Servicios y actualizaciones
  7. Preguntas frecuentes
    1. ¿Debo instalar siempre la versión más nueva?
    2. ¿Por qué node funciona en mi terminal y no como servicio?
    3. ¿Instalar Node incluye npm?
  8. En pocas palabras
  9. Conclusión
  10. Fuentes y documentación

Para instalar Node.js en Ubuntu, elige una rama con soporte y un método apropiado para tu trabajo. Un gestor de versiones por usuario resulta práctico para desarrollo; un servicio administrado necesita además una ruta y un proceso de actualización definidos.

La documentación de versiones consultada marca Node.js 20 como EOL. No lo uses como recomendación actual por defecto. Comprueba el estado de las ramas en el sitio oficial antes de seguir un tutorial.

Comprueba qué tienes instalado

command -v node
command -v npm
node --version
npm --version

Los comandos pueden resolver a instalaciones distintas según el usuario y la shell. Si trabajas con sudo o un servicio, su entorno no necesariamente carga el mismo perfil.

Desarrollo con nvm

Instala nvm siguiendo su repositorio oficial y revisa el script antes de ejecutarlo. La versión del instalador cambia; utiliza la indicada por el proyecto, no una URL antigua copiada sin verificar.

Una vez instalado y cargado en tu shell:

nvm install --lts
nvm current
node --version
npm --version

La selección --lts puede cambiar con el tiempo. Para un proyecto que deba reproducirse, guarda una versión acordada en .nvmrc y utiliza nvm install y nvm use desde esa carpeta.

No mezcles desarrollo con el Python o Node del sistema

El gestor por usuario no reemplaza automáticamente todos los paquetes del sistema. Mantén claro qué instalación administra cada método y evita eliminar dependencias que otras herramientas necesitan.

NodeSource y otros repositorios ofrecen alternativas, pero son proveedores específicos: verifica origen, soporte de Ubuntu y versión. No conviertas una tubería curl con sudo en un paso que se ejecuta sin revisar.

Crea un servidor de prueba

Guarda servidor.js:

const http = require('node:http');
const server = http.createServer((req, res) => {
  res.writeHead(200, {'Content-Type': 'text/plain; charset=utf-8'});
  res.end('Servidor de prueba\n');
});
server.listen(3000, '127.0.0.1');

Ejecuta node servidor.js y, desde otra terminal, consulta:

curl -i http://127.0.0.1:3000

El ejemplo escucha solo en loopback. Para terminarlo usa Ctrl+C en la terminal del proceso. No asumas que ejecutarlo así constituye un despliegue permanente.

Dependencias reproducibles

Cuando trabajes en una aplicación, conserva package.json y el lockfile apropiado. npm ci está pensado para instalaciones basadas en un bloqueo consistente; no sustituye la creación inicial de esas dependencias.

Evita sudo npm install como respuesta general a errores de permisos. Puede crear archivos de otro propietario o ejecutar scripts con más privilegios de los necesarios. Identifica primero qué ruta está utilizando npm.

Servicios y actualizaciones

Un servicio systemd no tiene por qué cargar nvm automáticamente. Define un usuario de servicio, ruta del ejecutable, directorio de trabajo y variables necesarias. Mantén secretos fuera del repositorio y revisa logs.

Antes de cambiar de rama mayor, prueba dependencias, módulos nativos y casos importantes. Conserva una vía de retorno y consulta cambios incompatibles.

Preguntas frecuentes

¿Debo instalar siempre la versión más nueva?

No necesariamente. Para una aplicación importante, usa una rama mantenida compatible con el proyecto y planifica su actualización. Current y LTS tienen propósitos distintos.

¿Por qué node funciona en mi terminal y no como servicio?

Los servicios pueden tener otro usuario, PATH y entorno. Revisa sus rutas explícitas en vez de depender de un perfil interactivo.

¿Instalar Node incluye npm?

Depende del método, aunque muchas distribuciones de Node lo incluyen. Comprueba ambos comandos y evita mezclar instalaciones sin saber de dónde provienen.

En pocas palabras

La elección de Node.js debe considerar soporte, compatibilidad del proyecto y forma de ejecución. Un gestor por usuario y un servicio del sistema requieren configuraciones diferentes.

Conclusión

Registra la versión elegida y prueba tu aplicación con sus dependencias. Actualiza de forma planificada cuando cambie el soporte, en lugar de conservar indefinidamente una rama antigua porque el comando todavía funciona.

Para continuar, revisa Cómo instalar Ubuntu desde una USB: paso a paso y Cómo instalar Docker en Ubuntu 24.04: guía práctica paso a paso.

Fuentes y documentación

Documentación de nodejs.org.

Documentación de github.com.

Subir

Descubre más de Sergio Caballero

Suscríbete ahora para seguir leyendo y obtener acceso al archivo completo.

Continuar leyendo