= Installer la NoteKfet2015 chez soi = Pour la tester pour développer, ou bien pour la déployer sur le serveur du BDE. <> == 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//main/pg_hba.conf}}} : {{{ # TYPE DATABASE USER CIDR-ADDRESS METHOD local all note ident map=notemap }}} et dans {{{/etc/postgresql//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 }}}