Bueno esta semana he tenido que montar varios servidores unos con NodeJS y otros con django, el de django para mi par amontar un blog en python y cuando vean el instalar un django y no morir en el intento es que lo he terminado y no es que sea complicado el server sin si, lo que no logro hacer andar es el blog que en teoría debería ser lo más sencillo, aunque bueno lo he dejado por falta de tiempo la otra semana ya espero tener el blog montado.
Pero bueno, vamos con nodejs, no tengo ninguna app que quiera hacer andar pero el lo de las apps no es cosa mia yo voy a más a lo que es el server y como no debian es mi favorito y aquí les dejo mi instalación o la manera que uso para instalarlo.
He visto muchos tutoriales para el señor Ubuntu y no me gusta nada, primero por que los que lo hacen no tienen ni idea y segundo por que va por gestor de paquetes y aunque los repos sean buenos no esta instalada la última versión y tercero, ubuntu no es un buen webserver, no es malo pero ya saben lo que pienso ( seguro no lo saben pero me gusta decirlo para no dar explicaciones largas )
En fin, vamos a lo de la instalación:
Instalar NodeJS en Debian
Primero descargamos el source desde nodejs.org
wget https://nodejs.org/dist/v0.10.5/node-v0.10.5.tar.gz
Descomprimimos
tar -xzvf node-v0.10.5.tar.gz
Movemos a donde lo queramos y de paso renombramos
mv node-v0.10.5 /opt/node
Entramos a la carpeta
cd /opt/node
Si tenemos un server estándar sin nada instalamos algunos paquetes: ( antes apt-get update )
apt-get install build-essential make openssl libssl-dev
Con eso a de bastar, aunque si nos pide algo más en el configure lo instalamos también.
Ahora instalamos:
./configure
Esto es rápido….
make
Make tarda bastante…. 5 o 6 minutos más o menos depende del server.
Si vemos algo así al final esta bien:
apshot.a -Wl,–end-group -lm -ldl -lrt
LINK(target) /opt/node/out/Release/node: Finished
touch /opt/node/out/Release/obj.target/node_dtrace_header.stamp
touch /opt/node/out/Release/obj.target/node_dtrace_provider.stamp
touch /opt/node/out/Release/obj.target/node_dtrace_ustack.stamp
touch /opt/node/out/Release/obj.target/node_etw.stamp
touch /opt/node/out/Release/obj.target/node_perfctr.stamp
touch /opt/node/out/Release/obj.target/node_systemtap_header.stamp
make[1]: se sale del directorio `/opt/node/out’
ln -fs out/Release/node node
Si da error a tirarse los pelos y buscar en google o dejar un comentario ( los comentarios en el blog se cierran a los 7 días, si tienen problemas pueden abrir un tema en foro.skamasle.com en el área de soporte técnico )
make install
Si termina con algo así esta todo listo:
installing /usr/local/lib/node_modules/npm/node_modules/abbrev/package.json
installing /usr/local/lib/node_modules/npm/node_modules/abbrev/LICENSE
installing /usr/local/lib/node_modules/npm/node_modules/abbrev/README.md
installing /usr/local/lib/node_modules/npm/node_modules/abbrev/lib/abbrev.js
installing /usr/local/lib/node_modules/npm/node_modules/osenv/package.json
installing /usr/local/lib/node_modules/npm/node_modules/osenv/LICENSE
installing /usr/local/lib/node_modules/npm/node_modules/osenv/osenv.js
installing /usr/local/lib/node_modules/npm/node_modules/osenv/README.md
symlinking ../lib/node_modules/npm/bin/npm-cli.js -> /usr/local/bin/npm
updating shebang of /usr/local/bin/npm to /usr/local/bin/node
Eso es todo, aunque podemos hacerlo con git, yo es que siempre descargo el source a veces el git tarda un poco aunque es lo mismo, tenemos que tener git instalado:
apt-get install git-core
Descargamos ( creamos una carpeta o ahí donde estemos, es mejor crear la carpeta )
git clone https://github.com/joyent/node.git
Luego es lo mismo
cd node
./configure
make
make install
El resultado es el mismo pero yo prefiero descargar el paquete.
En versiones viejas había que instalar npm aparte, ahora ya viene integrado y podemos ejecutarlo de una vez:
npm –help
Usage: npm
where
is one of:
add-user, adduser, apihelp, author, bin, bugs, c, cache,
completion, config, ddp, dedupe, deprecate, docs, edit,
explore, faq, find, find-dupes, get, help, help-search,
home, i, info, init, install, isntall, issues, la, link,
list, ll, ln, login, ls, outdated, owner, pack, prefix,
prune, publish, r, rb, rebuild, remove, restart, rm, root,
run-script, s, se, search, set, show, shrinkwrap, star,
stars, start, stop, submodule, tag, test, tst, un,
uninstall, unlink, unpublish, unstar, up, update, version,
view, whoaminpm
-h quick help on
Podemos instalar modulos: npm install forever si queremos ejecutar nuestro server «para siempre» si «para siempre» el muy jodido se cae a veces ¬¬
Para usarlo: forever start server.js
Así de fácil es, es casi tan fácil como hacer apt-get install nodejs, aunque en debian para tener una versión un poco más nueva tendríamos que estar en la rama testing.