initial commit deploiement.rst
parent
45e6a08fd1
commit
e5107aa02d
@ -0,0 +1,54 @@
|
|||||||
|
Déploiement
|
||||||
|
=============
|
||||||
|
|
||||||
|
Le dossier `deployment/roles` contient des *roles*, c'est-à-dire des élément d'installation exécutés par ansible sur le serveur. Le fichier `playbook.yml` définit l'ordre dans lequel ansible lance les roles.
|
||||||
|
|
||||||
|
- `common` installe le paquet debian.
|
||||||
|
|
||||||
|
- `nginx` installe le reverse proxy.
|
||||||
|
|
||||||
|
- `certbot` ajoute le certificat https.
|
||||||
|
|
||||||
|
- `archive` :
|
||||||
|
|
||||||
|
- lance la commande git archive qui crée un tar.gz à partir du dossier de la webapp ;
|
||||||
|
|
||||||
|
- met cette archive dans `deployment/roles/archive/files` ;
|
||||||
|
|
||||||
|
- copie l'archive dans le dossier `opt` du serveur ;
|
||||||
|
|
||||||
|
- extraie l'archive dans le serveur : le code de la webapp est donc copiée dans le serveur.
|
||||||
|
|
||||||
|
- `pip` installe les librairies Python nécessaires sur le serveur.
|
||||||
|
|
||||||
|
- `run` lance l'application Flask.
|
||||||
|
|
||||||
|
- `mongodb` installe mongodb sur le serveur.
|
||||||
|
|
||||||
|
L'activation de l'ensemble des roles est automatisée avec le script `run_playbook.sh`.
|
||||||
|
|
||||||
|
Dans `deployment`
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
- Si le serveur a été réinstallé, générer une nouvelle clef : `ssh-keygen -f "<PATH>/.ssh/known_hosts" -R "<SITE>"`
|
||||||
|
|
||||||
|
- Pousser la clef ssh dans le serveur : `ssh-copy-id -i <PATH>/.ssh/id_ed25519.pub debian@<SITE>`
|
||||||
|
|
||||||
|
- Entrer le mot de passe du serveur.
|
||||||
|
|
||||||
|
- Lancer le playbook : `./run_playbook.sh` et entrer le mot de passe du user.
|
||||||
|
|
||||||
|
Dans `datascience`
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
- Rapatrier les dernières modiffications : `git pull`.
|
||||||
|
|
||||||
|
- Lancer l'environnement virtuel.
|
||||||
|
|
||||||
|
- Lancer `data_registry_update.sh` (faire une merge s'il y a de nouvelles données).
|
||||||
|
|
||||||
|
- Générer les JSON : `kedro run --tags="etl_transform"`
|
||||||
|
|
||||||
|
- Mettre les JSON dans la base mongodb du serveur : `kedro run --tags="populate_database"`.
|
||||||
|
|
||||||
|
- Le scritp `nosql/actesp.py` permet de lister tout le contenu de la collection sur le serveur.
|
||||||
Loading…
Reference in New Issue