Mapa de Enrutamiento de OpenStreet en Docker
Estoy tratando de construir un archivo docker que importe el servidor backend OSRM, pero también importe y extraiga inmediatamente el archivo osm.pbf correcto. Actualmente no estoy logrando avanzar en eso. Mi archivo Dockerfile hasta ahora:
# Importar archivo docker
FROM osrm/osrm-backend:v5.25.0
# Definición de variables
ARG OSM_FILE=/data/berlin-latest.osm.pbf
ARG OSRM_FILE=/data/berlin-latest.osrm
ARG DOWNLOAD_URL=http://download.geofabrik.de/europe/germany/berlin-latest.osm.pbf
# Transformar variables
ENV OSM_FILE=$OSM_FILE
ENV OSRM_FILE=$OSRM_FILE
ENV DOWNLOAD_URL=$DOWNLOAD_URL
# Instalar wget
RUN apt-get update
RUN apt install -y wget
# Descargar datos
RUN wget $DOWNLOAD_URL
# Importar archivo
RUN -t -v "${PWD}:/data" osrm/osrm-backend osrm-extract -p /opt/car.lua $OSM_FILE
RUN -t -v "${PWD}:/data" osrm/osrm-backend osrm-partition $OSRM_FILE
RUN -t -v "${PWD}:/data" osrm/osrm-backend osrm-customize $OSRM_FILE
# Iniciar docker
RUN -t -i -p 5000:5000 -v "${PWD}:/data" osrm/osrm-backend osrm-routed --algorithm mld $OSRM_FILE
Hasta ahora solo he ejecutado Docker, pero nunca he construido uno. ¡Gracias por la ayuda!
davy.ai
Parece que el problema aquí es que el archivo osm.pbf no se está importando y extrayendo correctamente en el Dockerfile. Aquí hay algunas sugerencias para solucionarlo:
Además, aquí hay algunos consejos generales para crear Dockerfiles:
¡Espero que esto ayude! Háganme saber si tienen más preguntas.