diff --git a/Dockerfile b/Dockerfile index 6b9b077..e2e4823 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,16 @@ -FROM openrouteservice/openrouteservice:v8.0.0 +ARG OPEN_ROUTE_SERVICE_VERSION=8.0.1 + +FROM openrouteservice/openrouteservice:v${OPEN_ROUTE_SERVICE_VERSION} AS builder + +COPY preparation.sh /preparation.sh RUN wget http://download.geofabrik.de/north-america/us/massachusetts-latest.osm.pbf -O files/data.osm.pbf COPY ors-config.yml config/ors-config.yml + +RUN /preparation.sh + +FROM openrouteservice/openrouteservice:v${OPEN_ROUTE_SERVICE_VERSION} + +COPY --from=builder /home/ors/graphs graphs +COPY ors-config.yml config/ors-config.yml diff --git a/ors-config.yml b/ors-config.yml index b6b0609..fc791c0 100644 --- a/ors-config.yml +++ b/ors-config.yml @@ -6,6 +6,9 @@ ors: engine: source_file: /home/ors/files/data.osm.pbf profiles: + car: + enabled: true + hgv: enabled: true profile: driving-hgv diff --git a/preparation.sh b/preparation.sh new file mode 100755 index 0000000..0d7c45e --- /dev/null +++ b/preparation.sh @@ -0,0 +1,16 @@ +#!/usr/bin/env bash + +export REBUILD_GRAPHS=true +export ors.engine.preparation_mode=true +export ors.services.routing.mode=preparation + +/entrypoint.sh & +entrypoint_pid=$! + +# Wait for the server to become healthy... +while ! wget --quiet -O /dev/null http://localhost:8082/ors/v2/health; do + sleep 5 +done + +echo Built graph, stopping server... +kill $entrypoint_pid