-
Signed-off-by:
Emmy D'ANELLO <ynerant@crans.org>
b0c7d43a
NoteKfet 2020
Table des matières
Installation d'une instance de développement
L'instance de développement installe la majorité des dépendances dans un environnement Python isolé. Bien que cela permette de créer une instance sur toutes les distributions, cela veut dire que vos dépendances ne seront pas mises à jour automatiquement.
-
Installation des dépendances de la distribution. Il y a quelques dépendances qui ne sont pas trouvable dans PyPI. On donne ci-dessous l'exemple pour une distribution basée sur Debian, mais vous pouvez facilement adapter pour ArchLinux ou autre.
$ sudo apt update $ sudo apt install --no-install-recommends -y \ ipython3 python3-setuptools python3-venv python3-dev \ texlive-xetex gettext libjs-bootstrap4 fonts-font-awesome git
-
Clonage du dépot là où vous voulez :
$ git clone git@gitlab.crans.org:bde/nk20.git --recursive && cd nk20
-
Création d'un environment de travail Python décorrélé du système. On n'utilise pas
--system-site-packages
ici pour ne pas avoir des clashs de versions de modules avec le système.$ python3 -m venv env $ source env/bin/activate # entrer dans l'environnement (env)$ pip3 install -r requirements.txt (env)$ deactivate # sortir de l'environnement
-
Variable d'environnement. Copier le fichier
.env_example
vers.env
à la racine du projet et mettre à jour ce qu'il faut. -
Migrations et chargement des données initiales. Pour initialiser la base de données avec de quoi travailler.
(env)$ ./manage.py collectstatic --noinput (env)$ ./manage.py compilemessages (env)$ ./manage.py makemigrations (env)$ ./manage.py migrate (env)$ ./manage.py loaddata initial (env)$ ./manage.py createsuperuser # Création d'un⋅e utilisateur⋅rice initial
-
Enjoy :
(env)$ ./manage.py runserver 0.0.0.0:8000
En mettant 0.0.0.0:8000
après runserver
, vous rendez votre instance Django
accessible depuis l'ensemble de votre réseau, pratique pour tester le rendu
de la note sur un téléphone !
Installation d'une instance de production
Pour déployer facilement la note il est possible d'utiliser le playbook Ansible (sinon vous pouvez toujours le faire a la main, voir plus bas).