¿Cuál es la forma recomendada actualmente para instalar node.js en Debian?

10

He encontrado algunos métodos diferentes en la web, pero algunos de los artículos son bastante antiguos, y me preocupa que los métodos que describen hayan sido reemplazados.

¿Alguien puede decirme cuál es el método recomendado actualmente, para utilizar mejor la gestión de paquetes, etc.?

Hasta el arroyo
fuente

Respuestas:

16

La página oficial de github de node.js tiene un resumen de todas las distribuciones, incluido Debian. Recomiendan instalar desde la fuente:

apt-get install python g++ wget libssl-dev
mkdir /tmp/nodejs && cd /tmp/nodejs
wget http://nodejs.org/dist/node-latest.tar.gz
tar xzvf node-latest.tar.gz && cd node-v*
./configure
make
make test
make install

Recuerde que la instalación desde la fuente definitivamente le proporcionará el software más reciente, sin embargo, a veces es más difícil desinstalar todos los archivos adjuntos a un proyecto específico. Para evitar esto, use checkinstallpara crear un paquete rápido.

Pude construir un paquete .deb en Ubuntu siguiendo la guía aquí . Esto probablemente también debería funcionar para Debian ;-)

TrinitronX
fuente
1
Enlace inactivo :( - solía ser así web.archive.org/web/20120702211840/http://apptob.org
Magnetic_dud
1
Gracias por notar eso! He cambiado el enlace a la versión archivada. (es curioso que el sitio actualmente en ese dominio se trate de citas ... "Para crear un paquete .deb solo siga esta guía sobre cómo notar si su pareja lo está engañando" o_0)
TrinitronX
5

¡Preste atención a la advertencia a continuación si se trata de un sistema de producción!


Puede instalar node.js a través de apt-get.

# echo deb http://ftp.us.debian.org/debian/ sid main \
    > /etc/apt/sources.list.d/sid.list
# apt-get update
# apt-get install nodejs

ADVERTENCIA: Dicho esto, probablemente no debería hacer esto ya que está instalando software desde la rama de desarrollo de Debian (Sid). ¡Esta advertencia debe tenerse especialmente en cuenta si se trata de una máquina de producción también!

Mughil
fuente
55
Debería decirse que mezclar repositorios de diferentes versiones de Debian puede generar problemas, que el usuario debería estar listo para enfrentar.
enzotib
la mezcla de repositorios no
genera un
Ok, gracias. Esto se instalará desde la versión inestable, ¿verdad? ¿No es eso un problema?
UpTheCreek
3
Esta es una muy mala idea. La próxima vez que actualice su sistema, todo se actualizará a sid. Sid es inestable, no es bueno para la producción, y solo es adecuado para los expertos de Debian. Sid se rompe mucho. Lo rechazaría diez veces si pudiera.
Sam Watkins
2

Puede evitar mezclar versiones de Debian (¡una receta para el dolor!) Construyendo sus propios .debs

https://github.com/mark-webster/node-debian

Puede compilar archivos .deb para versiones arbitrarias de node.js, de modo que pueda instalarlo / actualizarlo / desinstalarlo fácilmente. Es un poco rápido y sucio, pero al menos es algo hasta que los paquetes oficiales de Debian llegan a estable.

mdw
fuente
Este paquete npmtambién se instala . Por cierto, esta es una solución limpia
b1_
2

Node.js está disponible en el repositorio oficial de Debian Sid y Jessie.

sudo apt-get install nodejs

Si no lo tiene en su repositorio principal (el comando no funcionó), le recomiendo compilar desde la fuente, de esta manera:

sudo apt-get install python g++ make checkinstall
mkdir ~/src && cd $_
wget -N http://nodejs.org/dist/node-latest.tar.gz
tar xzvf node-latest.tar.gz && cd node-v*
./configure
checkinstall   #remove the "v" in front of the version number in the dialog!
sudo dpkg -i node_*

Desinstalar:

sudo dpkg -r node

En caso de que se le niegue un permiso en el nodeejecutable, una ruta alternativa podría ser:

umask 0022
./configure
make
checkinstall -D --umask 0022 --reset-uids --install=no
dpkg -i node_*.deb
PMint
fuente
1

Para obtener el último nodo estable, puede instalarlo desde el administrador de paquetes y luego actualizarlo usando npm:

sudo apt-get install nodejs npm 
sudo npm update -g

Esta es la forma más sencilla de obtener la última versión sin gastar demasiado esfuerzo.

Naftuli Kay
fuente
Descubrí que npm, etc., se rompería después de hacer una 'actualización npm -g' ya que incluirían "#! / Usr / bin / env node" en lugar de "#! / Usr / bin / env nodejs" (Debian Jessie) . Creo que es mejor que instales desde la fuente, especialmente si vas a permitir que npm se actualice globalmente (lo que arroja cosas a / usr / local /)
David Goodwin
0

Al parecer, he encontrado la solución para esto. Si se enfrenta a problemas como este, no use la secuencia de comandos de sourceource para instalar nodejs en Debian. El script de nodeource debería funcionar bien en los sistemas host, pero en mi experiencia está afectando a los contenedores LXC / Docker.

haga lo siguiente manualmente para instalar la versión de nodejs deseada instalada

Para su versión particular de Debian / Ubuntu, agregue la línea respectiva a su nombre de lanzamiento del archivo sources.list sería el nombre en clave para su lanzamiento de Debian / Ubuntu

deb https://deb.nodesource.com/node_8.x/ <release name> main

agregar la clave del repositorio

curl --silent https://deb.nodesource.com/gpgkey/nodesource.gpg.key | sudo apt-key add -

y luego hacer

apt update y

apt install nodejs Avísame si esto te fue útil. Gracias

Raju Devidas
fuente