From 3c547fbbeb1677d20e566602c2901dcd54516c16 Mon Sep 17 00:00:00 2001 From: CoderBear801 Date: Fri, 14 Jun 2019 19:51:47 -0700 Subject: [PATCH 1/2] feat: add docker entry point and adjust docker file - Add docker entry point file for supporting routed_startup, compile_mapdata Related #3. --- .../osrm-backend/docker-entrypoint.sh | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100755 docker-orchestration/osrm-backend/docker-entrypoint.sh diff --git a/docker-orchestration/osrm-backend/docker-entrypoint.sh b/docker-orchestration/osrm-backend/docker-entrypoint.sh new file mode 100755 index 000000000..7f2be4daa --- /dev/null +++ b/docker-orchestration/osrm-backend/docker-entrypoint.sh @@ -0,0 +1,25 @@ +#!/bin/bash +DATA_PATH=${DATA_PATH:="/osrm-data"} + +_sig() { + kill -TERM $child 2>/dev/null +} + +if [ "$1" = 'routed_startup' ]; then + trap _sig SIGKILL SIGTERM SIGHUP SIGINT EXIT + ./osrm-routed $DATA_PATH/$2.osrm -a MLD --max-table-size 8000 & + child=$! + wait "$child" +elif [ "$1" = 'compile_mapdata']; then + trap _sig SIGKILL SIGTERM SIGHUP SIGINT EXIT + if [ ! -f $DATA_PATH/$2.osrm ]; then + if [ ! -f $DATA_PATH/$2.osm.pbf ]; then + curl $3 > $DATA_PATH/$2.osm.pbf + fi + ./osrm-extract $DATA_PATH/$2.osm.pbf -p profile.lua + ./osrm-partition $DATA_PATH/$2.osrm + ./osrm-customize $DATA_PATH/$2.osrm + fi +else + exec "$@" +fi From 6c2db92dc4f0c4fee73cf596debb7f78f15b2c6b Mon Sep 17 00:00:00 2001 From: CoderBear801 Date: Fri, 14 Jun 2019 20:37:54 -0700 Subject: [PATCH 2/2] feat: add docker entry point and adjust docker file - Modify docker file to add entry point Related with #3. --- docker-orchestration/osrm-backend/Dockerfile | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/docker-orchestration/osrm-backend/Dockerfile b/docker-orchestration/osrm-backend/Dockerfile index 58645fb0b..40a39c54d 100644 --- a/docker-orchestration/osrm-backend/Dockerfile +++ b/docker-orchestration/osrm-backend/Dockerfile @@ -10,6 +10,7 @@ RUN echo "Building branch ${BRANCH_NAME}" && \ cmake .. -DENABLE_LTO=On && \ cmake --build . -- -j && \ mkdir /osrm-build && \ + mkdir /osrm-data && \ cp /osrm-backend/build/osrm* /osrm-build/ && \ cp -r /osrm-backend/profiles /osrm-build/ @@ -41,6 +42,12 @@ RUN DEBIAN_FRONTEND=noninteractive apt-get update && \ RUN mkdir /osrm-build COPY --from=builder /osrm-build /osrm-build/ +COPY --from=builder /osrm-data /osrm-data/ COPY --from=gobuilder /workspace/go/bin /osrm-build/ +WORKDIR /osrm-build +# Publish +COPY ./docker-entrypoint.sh / +RUN chmod +x /docker-entrypoint.sh +ENTRYPOINT ["/docker-entrypoint.sh"]