There are dozens of methods to render offline tiles. With this repo you just specify the parameters of the bbox you want to get rendered and the desired zoom levels and all tiles for OSM and seamap are generated.
From my experience, there is mostly outdated documentation and a huge setup burden before getting started with other tools and pipelines. For openseamap support is even worse.
This repo tries to ease offline tile generation, especially for regions without prerendered packages.
This repo has DockerFiles for both, an offline OpenStreetMap rendering pipeline as well as an OpenSeamap tile rendering docker. The "update_maps.sh" script can be configured to download a bbox from osm via the overpass api, build the containers, and render the tiles. The resulting folders contain a manifest.json, such that the charts-plugin from signalk can provide the charts offline.
Alternatively you can comment out the lines to generate mbtiles.
Adapt the parameters in "update_maps.sh" and execute it (tested with ubuntu 16.04). You need docker, bzip2 and optionally squashfs.
The squashing is my method to have a single file and (hopefully) better performance compared to mbtiles/sqlite
This dockerfile creates a container with the openseamap rendering
This Repo can be used to compose to a kap also (other repo).
Usage: docker build -t openseamap_renderer .
with a data.osm.bz2 file in /data/osm: docker run -v /data/osm/seamap:/home/renderaccount/overpass_db -v /data/osm:/data openseamap_renderer
Also have a look at: https://github.com/KastB/openseamap_kap
This Dockerfile creates an OSM tile server based on the instructions from https://switch2osm.org/manually-building-a-tile-server-16-04-2-lts/. Originally from https://github.com/rooch84/docker-osm-tile-server.git
git clone https://github.com/KastB/docker-osm-tile-server.git
cd docker-osm-tile-server
docker build -t osm .
To run the newly built container (and access the tile server from port 8008 for example), just run:
docker run -p 8008:80 -v /data/:/data -e DATA="/data/osm/data.osm.bz2" osm
Assuming the container is running locally, you can then test it works by pointing your browser at (you should see a single tile):
http://localhost:8008/hot/14/8595/5710.png
Make sure, that you adapt the filename of your *osm.bz2 and the folder it is sitting in (~/data)