I'd like to add a note here that fully self hosted openstreetmap is a powerful tool.

The vector graphic data sets exist freely for anyone to mirror for their own use. The full tool chain of software needed to build your own tile server is available and not very difficult to implement.

I'm aware of more than one ISP using openstreetmap for NOC monitoring of outages, individual customer premises endpoint status, and so on.

Any good tutorials on this? What are the required specs? I assume the dataset is huge?

https://wiki.openstreetmap.org/wiki/Slippy_Map

https://wiki.openstreetmap.org/wiki/Deploying_your_own_Slipp...

https://switch2osm.org/serving-tiles/

It's small enough that I have a self hosted test tile server in my home office with about 8TB of storage, on a WD hard drive that was shucked out of a USB3 enclosure.

https://medium.com/gowombat/self-hosted-open-source-cheap-al...

I had a look at self-hosting Nominatim, but got scared away by the hardware requirements. I only have a spare 2015 MacBook Pro 13" with 16 GB of RAM and 2 TB of SSD. I only need small countries (New Zealand, Taiwan, Switzerland), but I'm not sure whether this will reduce the system requirements.

"A minimum of 2GB of RAM is required or installation will fail. For a full planet import 64GB of RAM or more are strongly recommended. Do not report out of memory problems if you have less than 64GB RAM. For a full planet install you will need at least 800GB of hard disk space (take into account that the OSM database is growing fast). SSD disks will help considerably to speed up import and queries. Even on a well configured machine the import of a full planet takes at least 2 days. Without SSDs 7-8 days are more realistic." [0]

I'd also like to render tiles in the OSM Bright theme. The default OpenStreetMap just looks kind of unattractive to me.

In the end I just use an old version of Galileo Offline Maps (now Guru Maps) with tiles scraped from Google using MOBAC. [1]. I made MOBAC profiles for every country [2] so I can just re-scrape them when I have a fast Internet connection.

[0] https://nominatim.org/release-docs/latest/admin/Installation...

[1] https://mobac.sourceforge.io/

[2] https://github.com/peterburk/mobacProfiles

Photon is good for self-hosting - it’s the pre-compiled Nominatim index (you can download a dump) with an autocomplete-friendly Elasticsearch interface.

Thanks for telling me about Photon! I see that it's provided by Graphhopper, who in my experience have been absolutely excellent with technical support about Map Matching. I wish I could choose a subset instead of 53GB for the whole world so I could run it on my phone, but it's certainly realistic to run on my laptop.

https://github.com/komoot/photon