Cómo instalar Node.JS en Amazon Linux

He visto el artículo sobre cómo usar yum para instalar las dependencias y luego instalar Node.JS y NPM desde la fuente. Si bien esto funciona, siento que Node.JS y NPM deberían estar en un repository público en algún lugar.

¿Cómo puedo instalar Node.JS y NPM en un comando en AWS Amazon Linux?

Tropezó con esto, fue extrañamente difícil de encontrar de nuevo más tarde. Poniendo aquí para la posteridad:

sudo yum install nodejs npm --enablerepo=epel 

EDIT 3: A partir de julio de 2016, EDIT 1 ya no funciona para nodejs 4 (y EDIT 2 tampoco). Esta respuesta ( https://stackoverflow.com/a/35165401/78935 ) da una verdadera frase de una sola línea.

EDITAR 1: Si está buscando nodejs 4, pruebe el repository de pruebas de EPEL:

 sudo yum install nodejs --enablerepo=epel-testing 

EDITAR 2: para actualizar desde nodejs 0.12 instalado a través del repository de EPEL usando el comando anterior, hasta el nodejs 4 desde el repository de pruebas de EPEL, siga estos pasos:

 sudo yum rm nodejs sudo rm -f /usr/local/bin/node sudo yum install nodejs --enablerepo=epel-testing 

Los paquetes más nuevos colocan los binarios del nodo en /usr/bin , en lugar de /usr/local/bin .

Y algunos antecedentes:

La opción --enablerepo=epel hace que yum busque los paquetes en el repository de EPEL.

EPEL (Paquetes adicionales para Enterprise Linux) es un proyecto de repository basado en una comunidad de código abierto y libre del equipo de Fedora que proporciona paquetes de software 100% de alta calidad para la distribución de Linux, incluidos RHEL (Red Hat Enterprise Linux), CentOS y Scientific Linux. El proyecto Epel no es parte de RHEL / Cent OS, pero está diseñado para las principales distribuciones de Linux al proporcionar muchos paquetes de código abierto como redes, administración de sistemas, progtwigción, monitoreo, etc. La mayoría de los paquetes de epel son mantenidos por el repo de Fedora.

A través de http://www.tecmint.com/how-to-enable-epel-repository-for-rhel-centos-6-5/

Al igual que @voltrevo, la respuesta aceptada me dio la v0.10 obsoleta.

Aquí hay otra forma de hacerlo que funciona muy bien:

 $ curl --silent --location https://rpm.nodesource.com/setup_8.x | bash - $ yum -y install nodejs 

También puede reemplazar el 8.x con otra versión, como 6.x, etc.

Puede ver todas las versiones disponibles en la página de NodeSource Github , y extraer desde allí también, si lo desea.

La respuesta aceptada me dio el nodo 0.10.36 y npm 1.3.6 que están muy desactualizados. Tomé el último tarball linux-x64 de la página de descargas de nodejs y no fue muy difícil de instalar: https://nodejs.org/dist/latest/ .

 # start in a directory where you like to install things for the current user (For noobs : it downloads node package as node.tgz file in your directlry) curl (paste the link to the one you want from the downloads page) >node.tgz 

Ahora sube el zip que acabas de descargar –

 tar xzf node.tgz 

Ejecute este comando y luego agréguelo a su .bashrc :

 export PATH="$PATH:(your install dir)/(node dir)/bin" 

(ejemplo: export PATH = “$ PATH: /home/ec2-user/mydirectory/node/node4.5.0-linux-x64/bin”)

Y actualice npm (solo una vez, no agregue a .bashrc ):

 npm install -g npm 

Tenga en cuenta que el -g allí que significa global, realmente significa global para esa instancia de npm, que es la instancia que acabamos de instalar y está limitada al usuario actual. Esto se aplicará a todos los paquetes que npm instala ‘globalmente’.

El procedimiento que me funcionó (siguiendo estas instrucciones bastante antiguas con algunas actualizaciones):

  • compruebe que git está instalado git --version o instálelo a través de:
    sudo yum install git
  • instala gcc y openssl:
    sudo yum install gcc-c++ make
    sudo yum install openssl-devel
  • clone el repository git en un directorio llamado node (que puede eliminar más adelante):
    git clone https://github.com/nodejs/node.git
  • decida qué versión de nodo desea en https://github.com/nodejs/node/releases
  • Vaya al directorio de nodo que acaba de crear e instale el nodo
    cd node
    git checkout v6.1.0 – ponga su versión deseada después de la v
    ./configure
    make
    sudo make install
  • pruebe que el nodo está instalado / trabajando con cualquier node --version o simplemente node (salir del nodo a través de process.exit() o ^C x 2 o ^C + exit )
  • verifique la versión npm: npm --version – versión y actualización si es necesario a través de sudo npm install -g npm
  • Opcional: eliminar el directorio de node con rm -r node

Notas:

  1. La respuesta aceptada no funcionó ya que sudo yum install nodejs --enablerepo=epel-testing devuelve el error: No package nodejs available.
    … y sudo yum install nodejs --enablerepo=epel (es decir, sin -testing ) solo dieron versiones muy antiguas.
  2. Si ya tiene instalada una versión anterior del nodo, puede eliminarla con:
    sudo npm uninstall npm -g … ya que npm puede desinstalarse
    sudo yum erase nodejs
    sudo rm -f /usr/local/bin/node
    ( sudo yum rm nodejs en la respuesta aceptada no funcionará ya que rm no es un comando válido de yum, vea yum --help )
  3. Es posible clonar el repository de nodos a través de git clone git://github.com/nodejs/node.git lugar de git clone https://github.com/nodejs/node.git pero puede obtener varios errores (consulte aquí ).
  4. Si ya tiene un directorio /node de una instalación anterior, elimínelo antes de usar el comando git clone (o habrá un conflicto):
    rm -r node
  5. Si tiene problemas con sudo npm... comando, como sudo: npm: command not found y / o tiene problemas de permisos al instalar paquetes de nodos sin sudo, edite sudo nano /etc/sudoers y agregue :/usr/local/bin a el final de la línea Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin para que lea Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin

Para la versión v4 LTS use:

 curl --silent --location https://rpm.nodesource.com/setup_4.x | bash - yum -y install nodejs 

Para el uso de Node.js v6:

 curl --silent --location https://rpm.nodesource.com/setup_6.x | bash - yum -y install nodejs 

También tuve algunos problemas al intentar instalar complementos nativos en Amazon Linux. Si quieres hacer esto también deberías instalar herramientas de comstackción:

 yum install gcc-c++ make 

Instalación simple con NVM …

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

Acabo de encontrar esto. Probé algunas de las respuestas más populares, pero al final, lo que funcionó para mí fue la guía de configuración rápida de Amazon.

Tutorial: Configuración de Node.js en una instancia de Amazon EC2

La esencia del tutorial es:

  1. Asegúrese de que está ssh’d en la instancia.
  2. Grab nvm: curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.32.0/install.sh | bash curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.32.0/install.sh | bash
  3. Activo . ~/.nvm/nvm.sh
  4. Instale el nodo usando nvm nvm install 4.4.5 (NOTA: Puede elegir una versión diferente. Verifique primero las versiones remotas ejecutando $ nvm ls-remote )
  5. Finalmente, compruebe que ha instalado el nodo de nodo correctamente ejecutando $ node -e "console.log('Running Node.js' + process.version)"

Esperemos que esto ayude a la siguiente persona.

Tenía instalado Node.js 6.x y quería instalar Node.js 8.x.

Aquí están los comandos que usé (tomados del sitio de Nodejs con algunos pasos adicionales para manejar los datos en caché de yum):

  1. sudo yum remove nodejs : desinstale Node.js 6.x (no sé si esto fue necesario o no)
  2. curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
  3. sudo yum clean all
  4. sudo yum makecache : Regenera el caché de metadatos (esto no estaba en la documentación, pero yum siguió intentando instalar Node.jx 6.x, sin éxito, hasta que emití estos dos últimos comandos)
  5. sudo yum install nodejs : instale Node.js 8.x

sudo yum install nodejs npm --enablerepo=epel funciona para Amazon Linux AMI . curl --silent --location https://rpm.nodesource.com/setup_6.x | bash - yum -y install nodejs curl --silent --location https://rpm.nodesource.com/setup_6.x | bash - yum -y install nodejs funciona para RedHat.

La solución más fácil es esta (haz esto como root)

 sudo su root cd /etc mkdir node yum install wget wget https://nodejs.org/dist/v9.0.0/node-v9.0.0-linux-x64.tar.gz tar -xvf node-v9.0.0-linux-x64.tar.gz cd node-v9.0.0-linux-x64/bin ./node -v ln -s /etc/node-v9.0.0-linux-x64/bin/node node 

introduzca la descripción de la imagen aquí

Como se menciona en la documentación oficial, simple abajo 2 pasos –

 curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash - sudo apt-get install -y nodejs 

https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions

curl --silent --location https://rpm.nodesource.com/setup_10.x | sudo bash - sudo yum -y install nodejs