This generates maps in the xcm format for XCSoar a tactical Gliding computer.
The Maps are layered out of a multitude of sources:
- terrain SRTM
- topology VMAP0
- Roads and Towns OSM
- Waypoints CUP format
- Airspaces OPENAIR format
Deployment and Development
Frontend
The frontend container contains the cherrypy based service and an nginx based reverse proxy for exposing the mapgen on port 9090 Both processes in the frontend container are started by supervisord.
Frontend produces job files that are put into a shared volume
/opt/mapgen/jobs/<jobid>.queued
Worker
This is the actual map builder, that takes the queued jobs in /opt/mapgen/jobs/jobid and starts processing all the *.queued jobs.
Volumes
These are named volumes inside your docker service.
This is the job directory where all jobs get stored
This directory caches all the data from the data repository. WARNING: This volume can take up a lot of space (100GB).
Ports
Build Variables
The Following build variables can be set during build (optional):
- GITURL: The git url for the mapgen sources
- GITBRANCH: The branch name
Building
in the current directory:
or with options:
docker-compose build \ --build-arg=GITURL=https://github.com/myuser/mapgen/mapgen.git \ --build-arg=GITBRANCH=myfeature