Installer la NoteKfet2015 chez soi
Pour la tester pour développer, ou bien pour la déployer sur le serveur du BDE.
Sommaire
Les paquets à installer
Backend :
python python-psycopg2 postgresql
Frontend :
python-django gunicorn
Récupérer les codes
On supposera qu'on est dans /home/note en tant qu'user note, même si ce n'est pas nécessaire.
git clone http://bde2.crans.org/git/Note_Kfet_2015_server.git
cd Note_Kfet_2015_server.git/config cp secrets.py.sample secrets.py
Puis éditer config/config.py et adapter basedir et photosdir si on n'était pas dans /home/note/.
git clone http://bde2.crans.org/git/Django_Client.git
cd Django_Client cp secrets.py.sample secrets.py
TODO
TODO : expliquer comment on lance tout ça proprement avec des daemons.
Penser à mettre une vraie SECRET_KEY dans secrets.py et corriger ROOT_PATH dans secrets.py si ce n'est pas /home/note/.
Bases de données
Backend
La note a besoin d'une base de données pour fonctionner. Et c'est mieux si elle n'est pas vide.
On a besoin de pouvoir s'identifier en tant qu'utilisateur PostgreSQL note.
Dans /etc/postgresql/<version>/main/pg_hba.conf :
# TYPE DATABASE USER CIDR-ADDRESS METHOD local all note ident map=notemap
et dans /etc/postgresql/<version>/main/pg_ident.conf :
# MAPNAME SYSTEM-USERNAME PG-USERNAME notemap username note
et on crée l'user :
sudo -u postgres psql postgres=# CREATE ROLE note LOGIN;
Maintenant, la base. Heureusement, dans le dépôt git, il y a déjà un script pour créer une base et mettre deux-trois trucs dedans histoire de pouvoir commencer.
Pensez à changer NOTEUSER au début du script si vous ne voulez pas l'exécuter en tant que l'utilisateur UNIX note.
cd Note_Kfet_2015_server/recreate/ sudo ./recreate_database.sh
Frontend
Django aussi a besoin de sa base de données pour tourner.
sudo -u postgres createdb django_client sudo -u postgres psql postgres=# ALTER DATABASE django_client OWNER TO note;
Puis
cd Django_Client/ ./manage.py syncdb
Tester en standalone
On peut lancer la note en standalone, en foreground.
cd Note_Kfet_2015_server/serveur ./Serveur.py 2013/03/10 00:48:58 MainServer :: Server started. Debug levels : file=5 stdout=5 2013/03/10 00:48:58 MainServer :: Ecoute sur 0.0.0.0:4242
cd Django_Client ./manage.py runserver 0.0.0.0:8000