This is a guide I wrote for Immich’s documentation. It features some Immich specific parts, but should be quite easy to adapt to other use cases.
It is also possible (and not technically hard) to self-host a protomaps release, but this would require 100GB+ of disk space (which I can’t spare right now). The main advantages of this guide over hosting a full tile server are :
- it’s a single nginx config file to deploy
- it saves you some storage space since you’re only hosting tiles you’ve previously viewed. You can also tweak the maximum cache size to your needs
- it is easy to configure a trade-off between map freshness and privacy by tweaking the cache expiration delay
If you try to follow it, please send me some feedback on the content and the wording, so I can improve it
What is a map tile server?
It’s a server that hosts map data for the whole world, and sends map fragments (tiles)as pictures for the coordinates and zoom levels that clients request from them
Ah, thanks. Brain in weekend already.
Great to see you in the wild again! Any update from Immich devs?
There have been some changes in a few recent releases related to the concerns I raised :
- the default tile provider is now hosted by the Immich’s team using protomaps (still uses vloudflare though)
- a new onboarding step providing the option to disable the map feature and clarifying the implications of leaving it enabled has been added
- the documentation has been updated to clarify how to change the map provider, and includes this guide as a community guide
I just learned about OpenFreeMap. I’ve not done it but it touts itself as a simple way to host your own tile server. I’m assuming that your proxy would work for a self hosted tile server with a few alterations.
Thank you for the link. I’ve seen it posted a few days ago.
The caching proxy for this tutorial should easily work with any tile server, including self-hosted. However, I’m not sure what the benefits would be if you are already self-hosting a tile server.
Lastly, the self-hosting documentation for OpenFreeMap mentions a 300GB of storage + 4GB of RAM requirement just for serving the tiles, which is still more than I can spare
Didn’t official nginx go proprietary or something a few months ago?
It’s still available in Debian’s default repositories, so it must still be open source (at least the version that’s packaged for Debian)
I think the changes happened after Debian 12 was released so it might just have the last open-source version in the repo. And someone made a fork immediately so it could be that too.
According to the Wikipedia article, “Nginx is free and open-source software, released under the terms of the 2-clause BSD license”
Do you have any source about it going proprietary ?
Maybe it added telemetry instead of going proprietary. I don’t exactly remember what happened. I saw news about it on Lemmy but my client doesn’t support search so I can’t find it now easily.
A core developer quit and forked it to make freenginx, based on a claim of corporate interference in security practices.
This was about 6 months ago and probably what you are thinking of. Its still open source, there doesn’t seem to be anything that’s come of the issue that was the cause of the split, and nginx is still actively developed.
Are you talking about Nginx Plus ? It seems to be a commercial product built on top of Nginx
I don’t think so. I’m sure I would have heard something about that for work related reasons. That would be quite a problem for the kubernetes ecosystem since nginx is so widely used there as an ingress controller.
The nginx website still lists a “bsd-like license” as what the source code is released under: https://nginx.org/LICENSE