下載 OSRM 台灣地圖包
1
2
3
4
5
| cd /var/www
mkdir osm
cd osm
wget https://download.geofabrik.de/asia/taiwan-latest.osm.pbf
|
圖資處理
此步驟會使用大量的記憶體,請確保可用記憶體至少還有 12GB 以上
1
2
3
| docker run --rm --name osrm_temp_process -t -v "${PWD}:/data" ghcr.io/project-osrm/osrm-backend osrm-extract -p /opt/car.lua /data/merge.osm.pbf || echo "osrm-extract failed"
docker run --rm --name osrm_temp_process -t -v "${PWD}:/data" ghcr.io/project-osrm/osrm-backend osrm-partition /data/merge.osrm || echo "osrm-partition failed"
docker run --rm --name osrm_temp_process -t -v "${PWD}:/data" ghcr.io/project-osrm/osrm-backend osrm-customize /data/merge.osrm || echo "osrm-customize failed"
|
執行 OSRM 後端
1
| docker run --name osrm_backend_routed -t -i -d -p 5000:5000 -v "${PWD}:/data" ghcr.io/project-osrm/osrm-backend --algorithm mld /data/merge.osrm
|
API 文件: http://project-osrm.org/docs/v5.5.1/api/#route-service
執行 OSRM 前端
1
2
| #請將 http://192.168.0.99:5000/ 替換成上面後端的主機 IP 位置及 Port 號
docker run -d -p 9966:9966 -e OSRM_BACKEND='http://192.168.0.99:5000/' osrm/osrm-frontend
|
參考資料
Github Project: https://github.com/Project-OSRM/osrm-backend
滴滴下架!我连夜自建了地图服务器: https://zhuanlan.zhihu.com/p/386894010
Geofabrik: https://download.geofabrik.de/
台灣地圖包: https://download.geofabrik.de/asia/taiwan-latest.osm.pbf