Files
lidar_rendu/docker-compose.maps.yml
Antoine Jacquin 0a2ccee958 Porter la génération de tuiles dans lidar-maps et retirer l'ancienne webapp
La carte à tuiles XYZ devient la seule interface : l'API de génération
(preview, generate, status, stop, file, cell), le job unique + file
persistante, la délégation LIDAR_GENERATION_URL et les garde-fous
(token, LIDAR_REGEN_CIDR) passent de webapp.py à mapserve.py ; l'interface
gagne les boutons + Zone / ⤒ Compléter / régénération à la dalle, les
options de run et la progression cadre par cadre. mapserve sert aussi
l'inventaire /api/tiles et les dalles en statique versionné : le worker
image complète remplace la webapp sur le 8973 du générateur, le Pi
n'exécute plus que lidar-maps. index.py se réduit aux registres partagés
+ vignettes/sous-tuiles/inventaire (l'UI HTML/JS et les mosaïques
d'overview partent avec export.py et les compose/scripts de la webapp).
2026-09-23 23:21:05 +02:00

55 lines
2.5 KiB
YAML

# Carte à tuiles XYZ (style OpenStreetMap / Google Maps) — cf. docs/MAPS.md.
#
# Sert la pyramide de tuiles + l'interface de consultation + la génération
# (déléguée à la machine de traitement via LIDAR_GENERATION_URL sur une
# machine légère, locale sur l'image complète). Même dossier output/ que le
# pipeline ; les tuiles sont rendues à la demande et mises en cache dans
# output/index_xyz/.
#
# docker compose -f docker-compose.maps.yml up -d --build
# docker compose -f docker-compose.maps.yml logs -f maps
# docker compose -f docker-compose.maps.yml down
services:
maps:
build:
context: .
dockerfile: Dockerfile.maps
image: lidar-maps
container_name: lidar-maps
init: true
user: "1000:1000"
ports:
- "8975:8975"
volumes:
# Lecture des dalles + écriture du cache de tuiles (output/index_xyz/)
- ./output:/data/output
environment:
- TZ=Europe/Paris
- LIDAR_OUTPUT_DIR=/data/output
# Générateur de tuiles (worker, cf. docker-compose.worker.yml) : la
# génération lancée depuis la carte y est déléguée. Sans cette
# variable ET sans pipeline local, les boutons de génération sont
# masqués (image légère de consultation seule).
# - LIDAR_GENERATION_URL=http://192.168.1.50:8973
# Jeton si le worker exige LIDAR_API_TOKEN.
# - LIDAR_REMOTE_TOKEN=un-secret-à-partager
# Réseau autorisé à lancer les générations (défaut : localhost +
# plages privées RFC1918 ; liste de CIDR, vide = tout autoriser).
# - LIDAR_REGEN_CIDR=192.168.1.0/24
# Serveur de DALLES amont (mapserve du worker) : sans données locales,
# l'inventaire vient de son /api/tiles et les images sont rapatriées à
# la demande dans ./output — de quoi servir tout un catalogue distant.
# - LIDAR_SOURCE_URL=http://192.168.1.50:8973
# Serveur de TUILES amont (autre instance lidar-maps) pour une carte
# déportée (Raspberry Pi) : une tuile absente localement y est rapatriée.
# - LIDAR_MAPS_URL=http://192.168.1.50:8975
# Mention d'attribution servie dans TileJSON, WMTS, JOSM et la carte.
# - LIDAR_ATTRIBUTION=LiDAR HD © IGN — Licence Ouverte 2.0
# Charge maximale : rendus et téléchargements simultanés, mémoire du
# cache d'images sources. Défauts taillés pour une petite machine ;
# à relever sur un serveur confortable.
# - LIDAR_TILE_WORKERS=2
# - LIDAR_TILE_FETCH_WORKERS=2
# - LIDAR_TILE_SOURCE_CACHE_MB=192
restart: unless-stopped