整个星球的离线瓷砖服务器

时间:2015-07-22 04:15:50

标签: openstreetmap mapbox mapnik tilemill mbtiles

我尝试使用找到hereplanet.osm.pbf文件来构建离线图块服务器,并且我遇到了一些扩展问题。

我的第一次尝试是将部分数据呈现到.mbtiles文件中并与Tilemill一起提供。这可以很好地达到某个缩放级别,但随后预渲染的图块的大小会爆炸。我对相应解决方案的猜测是将图块预渲染到一些合理的缩放级别,然后有一种机制可以动态渲染剩余的缩放级别。或者,我知道有一些基于矢量的图块(可能是?)总是在浏览器中有效地呈现(mapbox gl这样做,我想)。

有谁知道以这种规模设置离线图块服务器的最佳方法?我所见过的很多其他答案都涉及如何为特定城市或州服务瓷砖,但我并没有为展示整个星球做出多少贡献。

谢谢!

编辑:

或者,如果有其他格式可以提供除planet.osm.pbf之外的行星范围数据,我肯定愿意听到它 - 我与特定数据源无关,我只是想解决这个问题。

1 个答案:

答案 0 :(得分:2)

对于那种规模的任务,你需要Mapnik http://wiki.openstreetmap.org/wiki/Mapnik

  1. 安装mapnik和renderd https://switch2osm.org/serving-tiles/building-a-tile-server-from-packages/(我知道TileMill使用mapnik,所以检查一下你可能已经有了它)
  2. 将您的数据导入PostGIS(对于整个星球,可能需要几天时间和大约300G的硬盘空间)
  3. 将您的风格从TleMill转换为mapnik
  4. 现在您拥有自己的渲染服务器
  5. 还有一个带有一些样式的docker容器,mapnik + postgis + osm2pgsql在一个乐队中播放。 https://registry.hub.docker.com/u/dkiselev/nik4web/可能对您有所帮助。