Outils personnels

Installation de Juggernaut sur Debian 6.0 : Différence entre versions

De wikiGite

 
Ligne 7 : Ligne 7 :
 
ATTENTION juggernaut est déprecié : http://blog.alexmaccaw.com/killing-a-library
 
ATTENTION juggernaut est déprecié : http://blog.alexmaccaw.com/killing-a-library
  
== Debian ==
+
== Préparation du serveur ==
=== Préparation du serveur ===
 
 
Installation des outils nécessaires à l'installation de Juggernaut :
 
Installation des outils nécessaires à l'installation de Juggernaut :
 
  aptitude install build-essential php5-dev curl git
 
  aptitude install build-essential php5-dev curl git
  
=== Installation de Nodejs ===
+
== Installation de Nodejs ==
 
Installation des pré-requis :
 
Installation des pré-requis :
 
  aptitude install libssl-dev
 
  aptitude install libssl-dev
Ligne 25 : Ligne 24 :
 
  make install
 
  make install
  
=== Installation de Redis ===
+
== Installation de Redis ==
 
Ajouter le depot backport dans /etc/apt/source.list :
 
Ajouter le depot backport dans /etc/apt/source.list :
 
  deb http://backports.debian.org/debian-backports squeeze-backports main  
 
  deb http://backports.debian.org/debian-backports squeeze-backports main  
Ligne 35 : Ligne 34 :
 
  /etc/init.d/redis-server start
 
  /etc/init.d/redis-server start
  
=== Installation de Node_redis ===
+
== Installation de Node_redis ==
 
  npm install -g redis
 
  npm install -g redis
  
=== Installation de Phpredis ===
+
== Installation de Phpredis ==
 
  git clone https://github.com/nicolasff/phpredis.git
 
  git clone https://github.com/nicolasff/phpredis.git
 
  cd phpredis
 
  cd phpredis
Ligne 50 : Ligne 49 :
 
  extension=redis.so
 
  extension=redis.so
  
=== Installation de Juggernaut ===
+
== Installation de Juggernaut ==
 
  npm install -g juggernaut
 
  npm install -g juggernaut
  

Version actuelle datée du 10 août 2012 à 08:43

Présentation

https://github.com/maccman/juggernaut/

Juggernaut permet de raliser des connexions en temps réel entre un serveur et un navigateur web. Il permet le push d'informations dans des applications web, cela permet de realiser des choses comme des jeux multijoueurs, des chats ou des outils collaboratifs. Juggernaut est realisé à l'aide de Node.js.

ATTENTION juggernaut est déprecié : http://blog.alexmaccaw.com/killing-a-library

Préparation du serveur

Installation des outils nécessaires à l'installation de Juggernaut :

aptitude install build-essential php5-dev curl git

Installation de Nodejs

Installation des pré-requis :

aptitude install libssl-dev

Installation depuis les sources :
L'installation se fait /usr/local :

wget http://nodejs.org/dist/latest/node-v0.8.6.tar.gz
tar xzf node-v0.8.6.tar.gz && cd node-v0.8.6/
./configure --openssl-libpath=/usr/lib/ssl
make
make install

Installation de Redis

Ajouter le depot backport dans /etc/apt/source.list :

deb http://backports.debian.org/debian-backports squeeze-backports main 
aptitude update 
aptitude -t squeeze-backports install redis-server

Démarrage du service redis server :

/etc/init.d/redis-server start

Installation de Node_redis

npm install -g redis

Installation de Phpredis

git clone https://github.com/nicolasff/phpredis.git
cd phpredis
phpize
./configure
make
make install

Activation de l'extension PHP : Créer un fichier redis.ini dans /etc/php5/conf.d avec le contenu suivant :

extension=redis.so

Installation de Juggernaut

npm install -g juggernaut
vim /etc/init.d/juggernaut

Copier le contenu suivant :

 #! /bin/sh
 ### BEGIN INIT INFO
 # Provides: juggernaut2
 # Required-Start: $syslog $remote_fs
 # Required-Stop: $syslog $remote_fs
 # Should-Start: $local_fs
 # Should-Stop: $local_fs
 # Default-Start: 2 3 4 5
 # Default-Stop: 0 1 6
 # Short-Description: juggernaut2
 # Description: juggernaut2
 ### END INIT INFO
 
 
 PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
 DAEMON=/usr/local/bin/juggernaut
 NAME=juggernaut2
 DESC=juggernaut2
 PIDFILE=/var/run/juggernaut.pid
 
 test -x $DAEMON || exit 0
 
 set -e
 
 case "$1" in
   start)
       	echo -n "Starting $DESC: "	
 	touch $PIDFILE
 	chown juggernaut:juggernaut $PIDFILE
 	if start-stop-daemon --start --quiet --background --umask 007 --make-pidfile --pidfile $PIDFILE --chuid juggernaut:juggernaut --exec $DAEMON 
 	then
 		echo "$NAME."
 	else
 		echo "failed"
 	fi
 	;;
   stop)
 	echo -n "Stopping $DESC: "
 	if start-stop-daemon --stop --retry 10 --quiet --oknodo --pidfile $PIDFILE
 	then
 		echo "$NAME."
 	else
 		echo "failed"
 	fi
 	rm -f $PIDFILE
 	;;
 
   restart|force-reload)
 	${0} stop
 	${0} start
 	;;
 
   status)
 	echo -n "$DESC is "
 	if start-stop-daemon --stop --quiet --signal 0 --name ${NAME} --pidfile ${PIDFILE}
 	then
 		echo "running"
 	else
 		echo "not running"
 	exit 1
 	fi
 	;;
 
   *)
 	echo "Usage: /etc/init.d/$NAME {start|stop|restart|force-reload}" >&2
 	exit 1
 	;;
 esac
 
 exit 0
adduser --system --no-create-home --disabled-login --disabled-password --group juggernaut
chmod +x /etc/init.d/juggernaut
update-rc.d -f juggernaut defaults

Tester le fonctionnement de Juggernaut :
http://localhost:8080