Tutorial

Cómo instalar Node.js en CentOS 8

CentOSNode.jsJavaScriptCentOS 8

Introducción

Node.js es un tiempo de ejecución de JavaScript para programar del lado del servidor. Permite a los desarrolladores crear funcionalidades de backend escalables usando JavaScript, un lenguaje que muchos ya conocen del desarrollo web basado en navegadores.

En esta guía, verá tres formas distintas de instalar Node.js en un servidor de CentOS 8:

  • utilizar dnf para instalar el paquete nodejs del repositorio predeterminado AppStream de CentOS
  • instalar nvm, el administrador de versiones de Node, y usarlo para instalar y administrar varias versiones de node
  • compilar e instalar node del código fuente

La mayoría de los usuarios deberían usar dnf para instalar versiones previamente empaquetadas e integradas de Node. Si es desarrollador o necesita gestionar varias versiones instaladas de Node por algún motivo, utilice el método nvm. La mayoría de los usuarios rara vez necesitan compilar el código fuente.

Requisitos previos

Para completar este tutorial, necesitará un servidor con CentOS 8. Se asumirá que inició sesión en este servidor como usuario no root con privilegios sudo. Para configurarlo, consulte nuestra guía Configuración inicial para servidores con CentOS 8.

Opción 1: Instalar Node desde el repositorio de AppStream de CentOS

Node.js está disponible en el repositorio de software predeterminado AppStream de CentOS 8. Hay varias versiones disponibles; puede elegir una de ellas habilitando el flujo de módulos correspondiente. Primero, enumere los flujos disponibles del módulo nodejs usando el comando dnf:

  • sudo dnf module list nodejs
Output
Name Stream Profiles Summary nodejs 10 [d] common [d], development, minimal, s2i Javascript runtime nodejs 12 common, development, minimal, s2i Javascript runtime

Hay dos flujos disponibles: 10 y 12. [d] indica que la versión 10 es el flujo predeterminado. Si prefiere instalar Node.js 12, cambie los flujos de módulos en este momento:

  • sudo dnf module enable nodejs:12

Se le solicitará que confirme su decisión. Luego, se habilitará el flujo versión 12 y podremos continuar con la instalación. Para obtener más información sobre cómo trabajar con flujos de módulos, consulte la documentación oficial de AppStream de CentOS.

Instale el paquete nodejs con dnf:

  • sudo dnf install nodejs

Nuevamente, dnf le solicitará confirmar las acciones que realizará. Presione y y, luego, INTRO para hacerlo. El software se instalará.

Compruebe que la instalación se haya realizado de forma correcta haciendo una consulta a node sobre su número de versión:

  • node --version
Output
v12.13.1

Su resultado de --version será diferente si instaló Node.js 10 en su lugar.

Nota: Las dos versiones disponibles de Node.js son versiones de soporte a largo plazo, lo que significa que tienen una ventana de mantenimiento garantizada más prolongada.  Consulte la página oficial de versiones de Node.js para obtener más información sobre el ciclo de vida.

La instalación del paquete nodejs también debería instalar la utilidad del administrador de paquetes de Node, npm, como dependencia. Verifique que también se haya instalado correctamente:

  • npm --version
Output
6.12.1

En este punto, instaló Node.js y npm de forma correcta usando los repositorios de software de CentOS. En la siguiente sección, se mostrará cómo se puede usar el administrador de versiones de Node para hacerlo.

Opción 2: Instalar Node usando el administrador de versiones de Node

Otra forma de instalar Node.js que es particularmente flexible es usar nvm, el administrador de versiones de Node. Este software le permite instalar y mantener varias versiones independientes de Node.js, y sus paquetes de Node asociados, al mismo tiempo.

Para instalar NVM en su máquina con CentOS 8, consulte la página de GitHub del proyecto. Copie el comando curl del archivo README que se muestra en la página principal. Le proporcionará la versión más reciente de la secuencia de comandos de instalación.

Antes de canalizar el comando mediante bash, siempre es recomendable revisar la secuencia de comandos para asegurarse de que no haga nada que no desee. Puede hacerlo eliminando el segmento de | bash al final del comando curl:

  • curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh

Revíselo y asegúrese de estar cómodo con los cambios que realiza. Cuando esté satisfecho, ejecute el comando de nuevo con | bash anexado al final. La URL que utilice cambiará en función de la última versión de NVM, pero ahora la secuencia de comandos se puede descargar y ejecutar escribiendo lo siguiente:

  • curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash

Esto instalará la secuencia de comandos nvm en su cuenta de usuario. Para usarlo, primero, debe obtener su archivo .bash_profile:

  • source ~/.bash_profile

Ahora, puede preguntar a NVM qué versiones de Node hay disponibles:

nvm list-remote
. . .
       v12.13.0   (LTS: Erbium)
       v12.13.1   (LTS: Erbium)
       v12.14.0   (LTS: Erbium)
       v12.14.1   (LTS: Erbium)
       v12.15.0   (LTS: Erbium)
       v12.16.0   (LTS: Erbium)
       v12.16.1   (Latest LTS: Erbium)
        v13.0.0
        v13.0.1
        v13.1.0
        v13.2.0
        v13.3.0
        v13.4.0
        v13.5.0
        v13.6.0
        v13.7.0
        v13.8.0
        v13.9.0
       v13.10.0
       v13.10.1
       v13.11.0
       v13.12.0

¡Es una lista muy larga! Puede instalar una versión de Node al escribir cualquiera de las versiones que vea. Por ejemplo, para obtener la versión v13.6.0, puede escribir lo siguiente:

  • nvm install v13.6.0

Puede ver las distintas versiones que tiene instaladas al ingresar lo siguiente:

nvm list
Output
-> v13.6.0 default -> v13.6.0 node -> stable (-> v13.6.0) (default) stable -> 13.6 (-> v13.6.0) (default)

Esto muestra la versión activa en la primera línea (-> v13.6.0) seguida de algunos alias designados y las versiones a las que apuntan.

Nota: Si también tiene una versión de Node instalada a través de los repositorios de software de CentOS, puede ver la línea system -> v12.13.1 (u algún otro número de versión) aquí. Siempre puede activar la versión del sistema de Node usando nvm use system.

Además, verá alias de las diversas versiones de soporte a largo plazo (o LTS) de Node:

Output
lts/* -> lts/erbium (-> N/A) lts/argon -> v4.9.1 (-> N/A) lts/boron -> v6.17.1 (-> N/A) lts/carbon -> v8.17.0 (-> N/A) lts/dubnium -> v10.19.0 (-> N/A) lts/erbium -> v12.16.1 (-> N/A)

También podemos instalar una versión basada en estos alias. Por ejemplo, para instalar la última versión de soporte a largo plazo, erbium, ejecute lo siguiente:

  • nvm install lts/erbium
Output
Downloading and installing node v12.16.1... . . . Now using node v12.16.1 (npm v6.13.4)

Puede pasar de una versión instalada a otra con nvm use:

nvm use v13.6.0
Now using node v13.6.0 (npm v6.13.4)

Puede verificar que la instalación se haya realizado de forma correcta usando la misma técnica que utilizó en las otras secciones al ingresar lo siguiente:

node --version
Output
v13.6.0

Tenemos la versión correcta de Node instalada en nuestra máquina, tal como esperábamos. También hay una versión compatible de npm disponible.

Opción 3: Instalar Node con código fuente

Otra forma de instalar Node.js es descargar el código fuente y compilarlo.

Para hacerlo, utilice su navegador web para acceder a la página oficial de descargas de Node.js, haga clic en el enlace Source Code (Código fuente) y, luego, en Copiar dirección de enlace o cualquier opción similar que le proporcione su navegador.

Al regresar a su sesión de SSH, primero, asegúrese de hallarse en un directorio en el que pueda escribir. Usaremos el directorio principal del usuario actual:

  • cd ~

Luego, escriba curl y pegue el enlace que copió del sitio web seguido de | tar xz:

  • curl https://nodejs.org/dist/v12.16.1/node-v12.16.1.tar.gz | tar xz

Esto usará la utilidad curl para descargar el código fuente y, luego, lo canalizará directamente a la utilidad tar, que lo extraerá en el directorio actual.

Diríjase al directorio de código fuente que acaba de crear:

  • cd node-v*

Debemos descargar algunos paquetes de los repositorios de CentOS para poder compilar el código. Utilice dnf para instalarlos ahora:

  • sudo dnf install gcc-c++ make python2

Se le solicitará que confirme la instalación. Ingrese y y luego INTRO para hacerlo. Ahora, podemos configurar y compilar el software:

  • ./configure
  • make -j4

La compilación tomará bastante tiempo (unos 30 minutos en un servidor de cuatro núcleos). Usamos la opción -j4 para ejecutar cuatro procesos de compilación paralelos. Puede omitir esta opción o actualizar el número en función de la cantidad de núcleos de procesador de la que disponga.

Cuando la compilación finalice, podrá instalar el software en su sistema ingresando lo siguiente:

  • sudo make install

Para verificar que la instalación se haya realizado correctamente, pida a Node que muestre su número de versión:

  • node --version
v12.16.1

Si ve el número de versión correcto, significa que la instalación se habrá completado correctamente. De manera predeterminada, Node también instala una versión compatible de npm, por lo que también debería estar disponible.

Conclusión

En este tutorial, se demostró la forma de instalar Node.js usando el repositorio de software AppStream de CentOS y el administrador de versiones de Node, y compilando el código fuente.

Si desea obtener más información sobre la programación en JavaScript, lea nuestra serie de tutoriales relacionados:

Creative Commons License