Skip to content

Instantly share code, notes, and snippets.

@leighghunt
Last active February 18, 2019 20:49
Show Gist options
  • Select an option

  • Save leighghunt/22e18d35b7ca6fa098d8 to your computer and use it in GitHub Desktop.

Select an option

Save leighghunt/22e18d35b7ca6fa098d8 to your computer and use it in GitHub Desktop.
OSRM EC2 install
  • Mount data volume
lsblk 
sudo file -s /dev/xvdb
sudo mkfs -t ext4 /dev/xvdb
sudo mkdir /mnt/data
sudo mount /dev/xvdb /mnt/data
sudo chmod gou+wrx /mnt/data
sudo vim /etc/fstab
  LABEL=cloudimg-rootfs	/	 ext4	defaults,discard	0 0
  /dev/xvdb /mnt/data ext4 defaults,nofail,nobootwait        0       2
sudo mount -a

Check no errors for mount -a

  • Swapfile -> 2GB
sudo dd if=/dev/zero of=/swapfile bs=64M count=32
sudo mkswap /swapfile
sudo swapon /swapfile
  • Build
sudo apt-get install git cmake build-essential git cmake pkg-config \
libbz2-dev libstxxl-dev libstxxl-doc libstxxl1 libxml2-dev \
libzip-dev libboost-all-dev lua5.1 liblua5.1-0-dev libluabind-dev libtbb-dev

git clone https://github.com/Project-OSRM/osrm-backend.git
cd osrm-backend
mkdir -p build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
cmake --build .
sudo cmake --build . --target install
  • Download data
cd /mnt/data/

wget http://download.geofabrik.de/australia-oceania/australia-latest.osm.pbf
wget http://download.geofabrik.de/australia-oceania/new-zealand-latest.osm.pbf

  • Process data
cd ~/osrm-backend/build/
ln -s ../profiles/car.lua profile.lua

./osrm-extract /mnt/data/australia-latest.osm.pbf
./osrm-prepare /mnt/data/australia-latest.osrm
./osrm-routed /mnt/data/australia-latest.osrm
./osrm-extract /mnt/data/new-zealand-latest.osm.pbf
./osrm-prepare /mnt/data/new-zealand-latest.osrm
./osrm-routed /mnt/data/new-zealand-latest.osrm

  • osrm-frontend-v2
sudo apt-get install npm
sudo ln -s `which nodejs` /usr/bin/node

git clone https://github.com/Project-OSRM/osrm-frontend-v2
cd osrm-frontend-v2
npm install

vim src/leaflet_options.js

module.exports = {
  defaultView: {
    centerLat: -37.80,
    centerLng: 145.00,
    center: L.latLng(-37.80, 145.00),
    zoom: 13,
    waypoints: [],
    language: 'en',
    alternative: true,
    layer: streets
  },
  services: [{
    label: 'Car (fastest)',
    path_org: 'https://router.project-osrm.org/viaroute',
    path: 'http://dev-osrm.venari.co.nz:5000/viaroute'
  }],

make
python -m SimpleHTTPServer

Browse to port 8000

@leighghunt
Copy link
Copy Markdown
Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment