Vector and raster maps with GL styles. Server side rendering by Mapbox GL Native. Map tile server for Mapbox GL JS, Android, iOS, Leaflet, OpenLayers, GIS via WMTS, etc.
Make sure you have Node.js version 6 installed (running node -v
it should output something like v6.11.3
).
Install tileserver-gl
with server-side raster rendering of vector tiles with npm
npm install -g tileserver-gl
Now download vector tiles from OpenMapTiles.
curl -o zurich_switzerland.mbtiles https://openmaptiles.os.zhdk.cloud.switch.ch/v3.3/extracts/zurich_switzerland.mbtiles
Start tileserver-gl
with the downloaded vector tiles.
tileserver-gl zurich_switzerland.mbtiles
Alternatively, you can use the tileserver-gl-light
package instead, which is pure javascript (does not have any native dependencies) and can run anywhere, but does not contain rasterization on the server side made with MapBox GL Native.
An alternative to npm to start the packed software easier is to install Docker on your computer and then run in the directory with the downloaded MBTiles the command:
docker run --rm -it -v $(pwd):/data -p 8080:80 klokantech/tileserver-gl
This will download and start a ready to use container on your computer and the maps are going to be available in webbrowser on localhost:8080.
On laptop you can use Docker Kitematic and search "tileserver-gl" and run it, then drop in the 'data' folder the MBTiles.
You can read full documentation of this project at http://tileserver.readthedocs.io/.