We are in the process of migrating this forum. A new space will be available soon. We are sorry for the inconvenience.

Instalar node.js


Visitante
31/05/2012, 19:20
Muchísimas gracias a los dos. Creo que lo he conseguido instalar, ahora me estoy peleando con Express. Ya os contaré si algún día consigo que funcione, me habéis ayudado muchísimo.

Un saludo,

MarcosBL
31/05/2012, 19:12
My fault again... manejo bastante Node.js, a nivel de dev, pero siempre lo he instalado desde fuentes... :_D

Gracias manoleet !

manoleet
31/05/2012, 16:25
Cambia la URL por http://nodejs.tchol.org/repocfg/el/n...ase.noarch.rpm

La URL que te dio Marcos es para Fedora, esta es para CentOS.

Visitante
31/05/2012, 16:23
Gracias de nuevo, Marcos. He hecho lo que me has indicado por SSH:

sudo yum localinstall --nogpgcheck http://nodejs.tchol.org/repocfg/fedo...ase.noarch.rpm
Pero me dice esto:

Error: Package: nodejs-stable-release-15-2.noarch (/nodejs-stable-release.noarch)
Requires: system-release >= 15
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
No sé muy bien a qué se refiere, la verdad; ¿tengo que instalar una versión previa de node.js y actualizarla?

Gracias y perdón si estas preguntas te parecen muy obvias, no estoy acostumbrado a Linux.

MarcosBL
30/05/2012, 19:10
Ups ! Mea culpa, como dice manoleet , es CentOS, se me fue la vista, mil disculpas !

Sea la que sea, con el método de compilar desde fuentes no debería tener problemas, sólo utiliza tu gestor de paquetes para las dependencias en lugar del indicado, y ya está.

Si prefieres con paquetes:

sudo yum localinstall --nogpgcheck http://nodejs.tchol.org/repocfg/fedo...ase.noarch.rpm
sudo yum install nodejs-compat-symlinks npm

Visitante
30/05/2012, 18:24
Hola de nuevo:

Muchísimas gracias, creo que me has dado toda la información que necesito para iniciarme con node.js. Empezó a interesarme al ver un benchmark que mostraba una velocidad de servicio de páginas mayor que Apache+PHP -además de que la sintaxis JavaScript me resulta más cómoda que cualquier otra.

¿Podrías indicarme cómo comprobar cuál es mi distribución de Linux?

Muchas gracias de nuevo, un saludo,

manoleet
30/05/2012, 17:27
Cita Publicado inicialmente por Visitante
Versión Parallels Plesk Panel v10.4.4_build1013111102.18 os_CentOS 6
Diria que es un CentOS6 con Plesk10, pero con un poco de sentido común podrá adaptarse o pasarle por el hilo de los sysadmin.

MarcosBL
30/05/2012, 17:18
Para gestionar paquetes y dependencias de Node, tienes una utilidad llamada NPM (Node Package Manager), puedes instalarla con:

http://i.imm.io/r0uj.gif

Para mantener tus procesos node.js funcionando sin necesidad de hacks extraños, hay un paquete llamado Forever que controla la gestión de procesos Node.

https://github.com/nodejitsu/forever/

Una vez tengas NPM, puedes instalarla con

npm install forever -g
y la utilizarías tal que asi...

forever -m 5 /home/nodejs/servicio1/init.js
El listado completo de switches:

$ forever --help
usage: forever [options] [action] SCRIPT [script-options]

Monitors the script specified in the current process or as a daemon

actions:
start Start SCRIPT as a daemon
stop Stop the daemon SCRIPT
stopall Stop all running forever scripts
restart Restart the daemon SCRIPT
restartall Restart all running forever scripts
list List all running forever scripts
config Lists all forever user configuration
set Sets the specified forever config
clear Clears the specified forever config
logs Lists log files for all forever processes
logs Tails the logs for
columns add Adds the specified column to the output in `forever list`
columns rm Removed the specified column from the output in `forever list`
columns set Set all columns for the output in `forever list`
cleanlogs [CAREFUL] Deletes all historical forever log files

options:
-m MAX Only run the specified script MAX times
-l LOGFILE Logs the forever output to LOGFILE
-o OUTFILE Logs stdout from child script to OUTFILE
-e ERRFILE Logs stderr from child script to ERRFILE
-p PATH Base path for all forever related files (pid files, etc.)
-c COMMAND COMMAND to execute (defaults to node)
-a, --append Append logs
--pidFile The pid file
--sourceDir The source directory for which SCRIPT is relative to
--minUptime Minimum uptime (millis) for a script to not be considered "spinning"
--spinSleepTime Time to wait (millis) between launches of a spinning script.
--plain Disable command line colors
-d, --debug Forces forever to log debug output
-v, --verbose Turns on the verbose messages from Forever
-s, --silent Run the child script silencing stdout and stderr
-w, --watch Watch for file changes
-h, --help You're staring at it

[Long Running Process]
The forever process will continue to run outputting log messages to the console.
ex. forever -o out.log -e err.log my-script.js

[Daemon]
The forever process will run as a daemon which will make the target process start
in the background. This is extremely useful for remote starting simple node.js scripts
without using nohup. It is recommended to run start with -o -l, & -e.
ex. forever start -l forever.log -o out.log -e err.log my-daemon.js
forever stop my-daemon.js
http://i.imm.io/r0uj.gif

Si te estás iniciando en Node y necesitas/quieres elegir un framework potente y sencillo de utilizar, yo apostaría por Express.js

http://expressjs.com/

Se encarga de routing, redirecciones, views, etc... y es de uso muy difundido y estable. Un ejemplo tonto de uso:

var app = express.createServer();

app.get('/', function(req, res){
res.send('Hola mundo!');
});

app.get('/adios', function(req, res){
res.send('Adios mundo!');
});

app.listen(3000);

Cargando http://127.0.0.1:3000/ -> Hola mundo!

Cargando http://127.0.0.1:3000/adios -> Adios mundo!

http://i.imm.io/r0uj.gif

Just my 2 cents

MarcosBL
30/05/2012, 17:09
No sabemos ni tu distro, pero asumiendo que sea una Debian-like (Debian, Ubuntu, Mint etc) te pongo como compilarlo desde fuentes, como los hombres:

1 - Dependencias

sudo apt-get install g++ curl libssl-dev apache2-utils

2 - Instalar git para descarga del source

sudo apt-get install git-core

3 - Clonar el repo

sudo mkdir /tmp/compilarnode
cd /tmp/compilarnode
sudo git clone git://github.com/ry/node.git

4 - Instalar

cd node
./configure
make
sudo make install
5 - Comprobar que todo ha ido bien:

node -v
man node

Para instalar vía gestor de paquetes (obtendrás la versión estable de tu distribución, no la última como en el caso anterior), dale un ojo a https://github.com/joyent/node/wiki/...ackage-manager

Visitante
30/05/2012, 16:31
Hola a todos:

Me gustaría instalar node.js en el servidor, pero no sé cómo hacerlo.

Esta es la información de mi servidor:

CPU GenuineIntel, Intel(R)Core(TM) i5-2400 CPU @ 3.10GHz
Versión Parallels Plesk Panel v10.4.4_build1013111102.18 os_CentOS 6
SO Linux 2.6.38.2-xxxx-std-ipv6-64

Muchas gracias de antemano por vuestra ayuda,