How to add walking profile to docker build on windows

I, like many people new to ORS, am using the Setting up openrouteservice via Docker for Windows 10 Home tutorial by Dipayan to set up an ORS docker container. For the actual product, I will run querries via the openrouteservice r package. This works fine for me, if I run an older version of ORS (6.6.0 or below), but then I cannot seem to access the ‘foot-walking’ profile and only the ‘car-driving’ profile. If I use the latest version of openrouteservice, like this

docker run -dt --name ors-app -p 8080:8080 -e BUILD_GRAPHS=True -v /var/lib/docker/graphs:/ors-core/data/graphs -v /var/lib/docker/elevation_cache:/ors-core/data/elevation_cache -v /var/lib/docker/conf:/ors-conf -v C:/OSMFiles/north-dakota-latest.osm.pbf:/ors-core/data/osm_file.pbf -e "JAVA_OPTS=-Djava.awt.headless=true -server -XX:TargetSurvivorRatio=75 -XX:SurvivorRatio=64 -XX:MaxTenuringThreshold=3 -XX:+UseG1GC -XX:ParallelGCThreads=4 -Xms1g -Xmx2g" -e "CATALINA_OPTS=-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9001 -Dcom.sun.management.jmxremote.rmi.port=9001 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=localhost" openrouteservice/openrouteservice:latest

or like this ( Based on this forum entry No ors-config.json in ors-conf folder (Docker), I downloaded ors-config.json from here: openrouteservice/ors-config-sample.json at master · GIScience/openrouteservice · GitHub file and put it in a folder named “C:/ors-conf”)

docker run -dt --name ors-app -p 8080:8080 -e BUILD_GRAPHS=True -v /var/lib/docker/graphs:/ors-core/data/graphs -v /var/lib/docker/elevation_cache:/ors-core/data/elevation_cache -v C:/ors-config:/ors-conf -v C:/OSMFiles/north-dakota-latest.osm.pbf:/ors-core/data/osm_file.pbf -e "JAVA_OPTS=-Djava.awt.headless=true -server -XX:TargetSurvivorRatio=75 -XX:SurvivorRatio=64 -XX:MaxTenuringThreshold=3 -XX:+UseG1GC -XX:ParallelGCThreads=4 -Xms1g -Xmx2g" -e "CATALINA_OPTS=-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9001 -Dcom.sun.management.jmxremote.rmi.port=9001 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=localhost" openrouteservice/openrouteservice:latest

I get this error message at the top of the log when running the command.

rm: cannot remove '/ors-core/data/graphs/car': Permission denied

### openrouteservice configuration ###

No ors-config.json in ors-conf folder. Copy config from /ors-core/openrouteservice/src/main/resources/ors-config.json

cp: cannot create regular file '/ors-conf/ors-config.json': Permission denied

### Package openrouteservice and deploy to Tomcat ###

or this error message

rm: cannot remove '/ors-core/data/graphs/car': Permission denied

### openrouteservice configuration ###

ors-config.json exists in ors-conf folder. Copy config to /ors-core/openrouteservice/src/main/resources/ors-config.json

### Package openrouteservice and deploy to Tomcat ###

What can I do to prevent this from happening and give the right permissions? I have tried running as admin, reinstalling everything, but nothing seems to make a difference.

If i run the command like

docker run -dt --name ors-app -p 8080:8080 -e BUILD_GRAPHS=True -v /var/lib/docker/graphs:/ors-core/data/graphs -v /var/lib/docker/elevation_cache:/ors-core/data/elevation_cache -v /var/lib/docker/conf:/ors-conf -v C:/OSMFiles/north-dakota-latest.osm.pbf:/ors-core/data/osm_file.pbf -e "JAVA_OPTS=-Djava.awt.headless=true -server -XX:TargetSurvivorRatio=75 -XX:SurvivorRatio=64 -XX:MaxTenuringThreshold=3 -XX:+UseG1GC -XX:ParallelGCThreads=4 -Xms1g -Xmx2g" -e "CATALINA_OPTS=-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9001 -Dcom.sun.management.jmxremote.rmi.port=9001 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=localhost" openrouteservice/openrouteservice:v6.6.0

it does work, but only for cars and not walking. I hope this is not a duplicate issue, but couldnt find anyone addressing the problem of not being able to override the car graph

Hey,

I don’t know much about development on windows, but one thing strikes me as odd:
You mount your pbf file as

 -v C:/OSMFiles/north-dakota-latest.osm.pbf:/ors-core/data/osm_file.pbf

but all other directories as

-v /var/lib/docker/graphs:/ors-core/data/graphs
-v /var/lib/docker/elevation_cache:/ors-core/data/elevation_cache
-v /var/lib/docker/conf:/ors-conf

Maybe these also need a C:/ or something? Have a look at the Troubleshoot topics from docker for some more info about this.
This might also fix your problem with the config, as the default if no config is available is to copy it from the source repo and remove everything but car.

Best regards