Проекты

Кыргызстан в векторе: сервер векторных карт на базе OSM2VectorTiles

Gennady Karev
Mad Devs — блог об IT
2 min readDec 20, 2016

--

Чтобы настроить сервер векторных карт на базе инструментов OSM2VectorTiles понадобится установленный Docker и Docker-compose.
Скачаем проект и перейдем в директорию.

git clone https://github.com/osm2vectortiles/osm2vectortiles.git
cd ./osm2vectortiles

Запустим контейнер с PostGIS.

docker-compose up -d postgis

Скачаем последние данные Кыргызстана в директорию.

wget http://download.geofabrik.de/asia/kyrgyzstan-latest.osm.pbf -P ./import

Импортируем внешние ресурсы такие как, полигоны воды с OpenStreetMapData.com и Natural Earth Data для карт малого масштаба, метки страны и областей.

docker-compose up import-external

Импортируем PBF файл Кыргызстана в PostGIS, процедура заняла минут 5.

docker-compose up import-osm

Импортируем дополнительный функционал, SQL утилиты необходимые для создания векторных плиток.

docker-compose up import-sql

Теперь экспортируем MBTiles, передаем координаты для ограничивающего параллелепипеда, максимального и минимального масштаба.

docker-compose run -e BBOX=”69.265,39.1728,80.2296,43.2668" -e MIN_ZOOM=”0" -e MAX_ZOOM=”22" export

В завершении генерируем векторные плитки и создадим MBTile файл в директории export.

docker-compose up export

Чтобы увидеть результат, установим и запустим сервер рендера векторных плиток.

npm install -g tileserver-gl
tileserver-gl-light kyrgyzstan.mbtiles

Или при помощи Docker, команду выполняем в директории с MBTile файлом.

docker run -it -v $(pwd):/data -p 8080:80 klokantech/tileserver-gl

Результат по адресу http://localhost:8080. Карта будет доступна в двух стилях.

Maps

--

--