4cbc0375d5ab4e28de819818541e6c436599ff0b
[euphorik.git] / doc / installation.txt
1 -- Description de l'installation de Euphorik --
2
3 Voici les différentes étapes décrivant l'installation du site euphorik. Certaines données sont a adaptées en fonction des besoins. L'installation est décrite pour le système d'exploitation Debian.
4
5 * On admet que le dossier de base est "/euphorik".
6 * On admet que l'utilisateur courant est "toto" et qu'il possède "/euphorik"
7 * Tout ce qui commence par un '$' correspond à une ligne de commande tapée dans le shell de l'OS.
8 * Tout ce qui commence par un '>' correspond à une instruction dans le shell de erlang.
9
10
11 1. Installer Yaws
12    a) $apt-get install yaws
13
14 2. Configurer Yaws
15    a) Ajouter les lignes suivantes dans /etc/yaws/yaws.conf :
16       - "ebin_dir = /euphorik/modules/ebin"
17       - "include_dir = /euphorik/modules/include"
18    b) Le serveur virtuel est définit comme ceci dans /etc/yaws/conf.d/localhost.conf :
19       <server localhost>
20          port = 8081
21          listen = 0.0.0.0
22          docroot = /euphorik
23          allowed_scripts = [yaws]
24          appmods = <request, euphorik_requests>
25          start_mod = euphorik_daemon
26       </server>
27    c) Editer '/etc/init.d/yaws' et remplacer cette ligne :
28       script="$DAEMON -I $YAWS_ID $@"
29       par celle ci :
30       script="$DAEMON --sname yaws --mnesiadir \"/euphorik/var/BD\" -I $YAWS_ID $@"
31       FIXME : trouver une méthode plus élégante.
32
33 3. Créer la base de donnée
34    a) Arreter Yaws (en root) :
35       $/etc/init.s/yaws stop
36    b) Lancer un noeud Erlang
37       - Se placer dans le répertoire /euphorik/modules/ebin
38       - Executer : 
39          $erl -sname yaws -mnesia dir '"/euphorik/var/BD"'
40    c) Charger le module :
41       >l(euphorik_bd).
42    d) Créer la base :
43       >euphorik_bd:create().
44    e) Démarrer Yaws (en root) :
45       $/etc/init.s/yaws start
46    
47 4. Adminisatration du site Euphorik
48    a) Connexion au noeud "yaws"
49          erl -sname gb
50       puis dans la console :
51          CTRL-G
52          r yaws@overnux
53          c 2
54       Pour plus d'infos : http://www.ejabberd.im/interconnect-erl-nodes
55       Il est possible de connecter un shell directement sur le noeud de yaws comme ceci :
56          erl -sname gb -remsh yaws@overnux
57       
58    b) Utiliser les outils des modules
59       - Par exemple :
60          >euphorik_minichat:messages(10).
61          pour voir les 10 derniers messages   
62       
63    c) Ancienne méthode de connexion (plus compliqué)
64       - Le cookie de Yaws (/var/run/yaws/.erlang.cookie ou /var/cache/yaws/.erlang.cookie) et celui de l'utilisateur courant (~/.erlang.cookie) doit être le même.
65          (si le cookie de yaws est modifié il faut relancer yaws).
66       - Se placer dans le répertoire /euphorik/modules/ebin
67       - Executer : 
68          $erl -sname toto
69          où "toto" est le nom du noeud (tout sauf "yaws")
70       - Charger le module du minichat :
71          >l(euphorik_minichat)
72       - Se connecter au noeud yaws :
73          >euphorik_minichat:connect()
74          la valeur retournée doit être : {ok,[yaws@overnux]}
75          
76    d) Informations sur la mémoire consommée :
77       Mémoire totale (ko) :
78           trunc(element(2, lists:nth(1, memory())) / 1024).
79       voir c:i() également