From 3ffc52fe233d01020ffe283fa9966e6cc3b93c1a Mon Sep 17 00:00:00 2001
From: Quentin Duchemin <quentinduchemin@tuta.io>
Date: Wed, 23 Sep 2020 21:21:48 +0200
Subject: [PATCH] [MapCareTech] Add documentation

---
 caretech/map/README.md | 43 +++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 42 insertions(+), 1 deletion(-)

diff --git a/caretech/map/README.md b/caretech/map/README.md
index c17e31e4..bd2ccbf0 100644
--- a/caretech/map/README.md
+++ b/caretech/map/README.md
@@ -1,3 +1,44 @@
 # uMap
 
-Ce dossier permet de déployer une instance de [uMap](https://github.com/umap-project/umap/), protégée par une authenfication HTTP.
+Ce dossier permet de déployer une instance de [uMap](https://github.com/umap-project/umap/), un logiciel libre permettant de créer des cartes personnalisées sur fond de carte OpenStreetMap.
+
+Cette image Docker essentiellement utilise le package Python `umap-project`, et ajoute :
+* `uWSGI`, utilisé ici comme serveur d'application Python.
+* `nginx`, car Traefik ne supporte pas `uWSGI`.
+* Un entrypoint permettant d'initialiser la base de donnée et de compresser les fichiers statiques.
+
+Lors du lancement de l'application, les fichiers statiques sont copiés dans `/srv/umap/static`. Le fichier [uwsgi.ini](./uwsgi.ini) permet justement de router les requêtes qui commencent par `/static` vers ce dossier.
+
+## Configuration
+
+L'ensemble de la configuration se fait via l'environnement.
+Le fichier [settings.py](./settings.py) est injecté au lancement de `uMap` (via `UMAP_SETTINGS`), et permet de charger toutes les variables de configuration à partir des variables d'environnement, ou des valeurs par défaut.
+
+Les variables sont réparties entre le fichier Compose et les fichiers de secrets.
+
+## Lancement
+
+S'assurer que l'image a été construite et poussée sur le registre de production.
+
+```bash
+docker-compose up -d && docker-compose logs -f
+```
+
+### Premier lancement
+
+Dans la configuration actuelle, l'instance est fermée et les comptes doivent être créés manuellement.
+
+En particulier, un compte administrateur doit être créé au premier lancement.
+
+```bash
+docker-compose exec app bash
+umap createsuperuser
+```
+
+Remplir les différents champs.
+
+## Mise à jour
+
+Changer l'argument `UMAP_VERSION` du [Dockerfile](./Dockerfile), et mettre à jour le tag de l'image dans le fichier Compose.
+
+Pour les mises à jour majeures des SGBD, voir leur documentation officielle.
-- 
GitLab