自己的圖磚自己刻 docker 大法
Source: https://github.com/OsmHackTW/openstreetmap-tiles-docker
建立資料庫位置
- mkdir /tmp/osm-postgresql && chmod 777 /tmp/osm-postgresql
- wget -O /tmp/import.pbf http://download.geofabrik.de/asia/taiwan-latest.osm.pbf
也吃 xml 檔案,但是用 pbf 速度會比較快。
建立伺服器
- docker pull chihchun/openstreetmap-tiles-tw
- docker run -v /tmp/osm-postgresql:/var/lib/postgresql chihchun/openstreetmap-tiles-tw initdb startdb createuser createdb
- docker run -v /tmp/osm-postgresql:/var/lib/postgresql -v /tmp:/data chihchun/openstreetmap-tiles-tw startdb import
- docker run -P -v /tmp/osm-postgresql:/var/lib/postgresql chihchun/openstreetmap-tiles-tw startdb startservices
- docker run -p 127.0.0.1:8080:80 -P -v /tmp/osm-postgresql:/var/lib/postgresql chihchun/openstreetmap-tiles-tw startdb startservices
firefox http://localhost/8080
除錯
- cd /tmp
- docker run -p 127.0.0.1:8080:80 -v `pwd`/osm-postgresql:/var/lib/postgresql -v /tmp:/data -i -t chihchun/openstreetmap-tiles-tw cli
- /usr/local/sbin/run help
- /usr/local/sbin/run initdb
- /usr/local/sbin/run startdb
- /usr/local/sbin/run createuser
- /usr/local/sbin/run createdb
- /usr/local/sbin/run import
- /usr/local/sbin/run startservices
TODO
- 需要引入 all the spatial reference systems, https://github.com/OsmHackTW/openstreetmap-tiles-docker/commit/2f2cfd15aca14c5ace588f7d08908f4c2a54220f
- build local map https://github.com/OsmHackTW/openstreetmap-tiles-docker/commit/f7eb6221f045f6b570dfb1e0bf62ceb4e4682b36
- 需要寫好 import script. * added downlaod commands. · OsmHackTW/openstreetmap-tiles-docker@c18ac92 https://github.com/OsmHackTW/openstreetmap-tiles-docker/commit/c18ac929920eff21186e400afd73376799159b36
- 修正中文字形 * uses more fonts, include unifont. · OsmHackTW/openstreetmap-tiles-docker@2e62152 https://github.com/OsmHackTW/openstreetmap-tiles-docker/commit/2e62152f23937069a1496db0a21fc84ed92f2899
* chihchun/openstreetmap-tiles Repository | Docker Hub Registry - Repositories of Docker Images https://registry.hub.docker.com/u/chihchun/openstreetmap-tiles/
* OsmHackTW/openstreetmap-tiles-docker https://github.com/OsmHackTW/openstreetmap-tiles-docker