Commit fed7cb52 authored by rg's avatar rg

Update

parent 620cb842
......@@ -20,7 +20,7 @@ $> git clone ssh://git@git.beta.pole-emploi.fr:23/open-source/tuiles/tuileslb.gi
$> cd tuileslb
tuileslb$> sudo docker-compose up -d --build
```
Le projet peut se paramétrer au niveau des ports, token... par le biais du fichier ".env" lu par docker-compose.
Le projet peut se paramétrer au niveau des ports, token... par le biais du fichier `.env` lu par docker-compose.
***Pour l'installation de docker, suivre les prérequis en annexes.***
......@@ -133,7 +133,7 @@ DOMAIN=maps.domain.tld
MAPS_TOKEN=0bf68e49728c59e806807d4bf9082b53f94a6c096ae33434ad4b1e2686b97efe
BALANCER_IPLIST=127.0.0.1 mapsft1.domain.tld mapsft2.domain.tld mapsft3.domain.tld
```
***Ici MAPS_TOKEN permet au autres erveurs de tuiles de télécharger une map sur ce serveur s'ils le veulent.***
***Ici MAPS_TOKEN permet aux autres erveurs de tuiles de télécharger une map sur ce serveur s'ils le veulent.***
## Configuration en serveur de tuiles
......@@ -149,16 +149,47 @@ URL_DOWNLOADMAP=https://maps.domain.tld/0bf68e49728c59e806807d4bf9082b53f94a6c09
***Dans cet exemple, le conteneur va tenter de télécharger une map `planet.mbtiles` sur le serveur de répartition avant de lancer le serveur de tuiles***
## Utilisation d'un certificat auto signé
S'assurer que le volume partagé `./tuiles/etc/nginx/ssl` soit vide et modifier le fichier `.env` avec le paramètre :
```
SSL=true
```
***Le conteneur va créer un jeu de clef dans `./tuiles/etc/nginx/ssl` : `fullchain.pem` et `privkey.pem`***
## Utilisation d'un jeu de clef certifié autre que letsencrypt
Positionner le jeu de clefs dans `./tuiles/etc/nginx/ssl` en les nommant de façon normée : `fullchain.pem` et `privkey.pem`.
Puis modifier le fichier `.env` avec le paramètre :
```
SSL=true
```
***Notons que para rapport au précédent cas, le conteneur detectera la présence des clefs et ne cherchera pas à creer un jeu auto-signé***
# Informations sur le fonctionnement
## Le serveur de dépot de carte
Un serveur de tuiles peut donc télécharger une carte au format `.mbtiles` via un serveur commun grâce à l'emploi de `MAPS_TOKEN`. Ce paramètre doit rester secret et éviter d'utiliser des caractères alphanumériques uniquement. Si possible, générer plutôt un has sha256.
Si possible utiliser pour `MAPS_TOKEN` un hash sha256.
## L'utilisation du serveur de dépot de carte par les serveurs de tuiles
Le paramètre `URL_DOWNLOADMAP` peut être utiliser pour spécifier à un noeud de se synchnoniser avec une autre carte. (téléchargement)
La carte téléchargée par chaque noeud est d'abord comparée en taille avec celle présente sur le disque. Si la carte est absente localement, ou différente en taille, un nouveau téléchargement se lance avant de rendre disponible le service de tuiles.
Les cartes téléchargées sont stockées dans le répertoire `data/`. Pour réinitialiser les cartes, il faut effacer le contenu de ce répertoire.
## Persistence des données via les volumes
Pour la persistence des données il est souhaitable de partager les répertoires suivants avec l'host :
- /data
- /etc/nginx/conf.d/.templates
......@@ -169,6 +200,14 @@ Pour la persistence des données il est souhaitable de partager les répertoires
- /var/log/nginx
- /var/lib/munin
## Les paramètrages à éviter
- Un serveur de tuiles pouvant être serveur de dépôt, ne pas configurer le paramètre `URL_DOWNLOADMAP` sur lui-même: il risquerait d'écraser sa propre carte.
# Fabrication d'une carte au format `.mbtiles`
Il faut utiliser le projet open source [openmaptiles](git clone https://github.com/openmaptiles/openmaptiles)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment