Files
lidar_rendu/docker-compose.webapp.yml
Antoine Jacquin e2533bac48 Centrer la carte sur le GPS du téléphone (HTTPS terminé par le proxy)
Le bouton ⌖ recentre la carte sur la position GPS du téléphone. L'API
Geolocation exige un contexte sécurisé : la webapp sert désormais du HTTP
et le TLS est porté par le reverse proxy (Traefik, labels dans l'override
local) ; le webapp est transparent au proxy (URLs relatives, X-Forwarded-For
pour la restriction LIDAR_REGEN_CIDR). Ajoute le modèle d'override
docker-compose.webapp.override.yml.example, un rebuild d'index à la demande
et met à jour doc/déploiement ; les tuiles sont servies à la demande.
2026-09-13 19:57:09 +02:00

51 lines
2.5 KiB
YAML

# Webapp légère pour Raspberry Pi — cf. docs/DEPLOY_WEBAPP.md.
#
# La carte et les vignettes sont servies localement ; la génération de tuiles
# (téléchargement IGN + traitement PDAL/GPU) est déléguée à la machine de
# traitement = service `worker` du docker-compose.worker.yml de cette machine.
#
# docker compose -f docker-compose.webapp.yml up -d --build
# docker compose -f docker-compose.webapp.yml logs -f webapp
services:
webapp:
build:
context: .
dockerfile: Dockerfile.webapp
image: lidar-webapp
container_name: lidar-webapp
init: true
user: "1000:1000"
ports:
- "8973:8973"
volumes:
# Cache local des tuiles, peuplé à la demande depuis LIDAR_GENERATION_URL
- ./output:/data/output
# Clé SSH du hôte (déploiement, git pull distant) si nécessaire
# - ~/.ssh:/home/lidar/.ssh:ro
# Configuration SSH (known_hosts) si nécessaire
# - ~/.ssh/config:/home/lidar/.ssh/config:ro
environment:
- TZ=Europe/Paris
- LIDAR_OUTPUT_DIR=/data/output
# Adresse du backend de génération des tuiles (machine de traitement,
# service `worker` de son docker-compose.worker.yml) — à définir :
# LIDAR_GENERATION_URL=http://<ip-machine-puissante>:8973
# Sans cette variable : consultation autonome du cache local, aucune
# génération possible depuis l'interface.
# - LIDAR_GENERATION_URL=http://192.168.1.50:8973
# Jeton partagé si LIDAR_API_TOKEN est défini sur la machine de traitement
# - LIDAR_REMOTE_TOKEN=change-moi
# Les tuiles sont servies à la demande depuis LIDAR_GENERATION_URL
# (cache peuplé au fil des consultations) : plus de rsync ni de sync
# périodique ; le bouton ↻ / POST /api/sync déclenchent le rebuild.
# Réseau autorisé à lancer les générations depuis la carte (défaut
# 192.168.1.0/24 ; chaîne vide = restriction levée). Les autres clients
# consultent la carte en lecture seule (boutons masqués, API 403).
# - LIDAR_REGEN_CIDR=192.168.1.0/24
# Le webapp sert du HTTP. Le TLS est terminé par le reverse proxy (Traefik,
# certificat porté par le proxy) : la configuration Traefik (routage HTTPS)
# vit dans le fichier override local docker-compose.webapp.override.yml
# (non versionné, sur le Pi) — cf. docs/DEPLOY_WEBAPP.md « Centrer la
# carte sur la position GPS » et docker-compose.webapp.override.yml.example.
restart: unless-stopped