🛣 The Open Source Routing Machine Docker ready!
This image is based on the official osrm-backend Docker image with the addition of some awesome features!
- Download and precomputes maps on startup only if it's necessary.
- Configurable with ENV variables.
You need to specify these environment variables.
Name | Description |
---|---|
OSRM_MAP_NAME | The name of the maps you want to download used as filename. |
OSRM_MAP_URL | The URL from where the map file will be downloaded. Check Geofabrik for download URLs. |
OSRM_EXT_PROFILE | The profile to use to extract the road network. See profiles for more info about them. |
OSRM_API_PARAMS | Custom flags to pass to the osrm-routed command. The list of flags is available here |
OSRM_PIPELINE | The OSRM pipeline you want to use, MLD or CH. Defaults to MLD. |
Example of usage.
$ docker pull lignumaqua/osrm
$ docker run -d -p 5000:5000 --name osrm-backend -e OSRM_MAP_NAME="center-italy" -e OSRM_MAP_URL="http://download.geofabrik.de/europe/italy/centro-latest.osm.pbf" -e OSRM_EXT_PROFILE="car" -e OSRM_API_PARAMS="--port 5000" lignumaqua/osrm-backend:latest OSRM_PIPELINE="MLD" lignumaqua/osrm:latest
Also recommended to map the docker /data folder to persistent storage outside the docker using the -v directive.
- Added Curl to Docker file. Not present in OSRM Source Docker.
- Changed sh file to use Curl rather than wget.
- On startup checks for existence of either .osrm.hsgr from osrm.contract or osrm.mldgr from osrm.customize before downloading and extracting a new osm file.
- Option through OSRM_PIPELINE variable to choose MLD or CH toolchain