I have a couple open source repos for generating hillshade and contours (raster and vector, respectively) that I use with my self hosted tiles at nst.guide. The data sources I'm using are US only, though SRTM is a common choice for international Digital Elevation Models.
[0]: https://github.com/nst-guide/hillshade [1]: https://github.com/nst-guide/contours