I moved my retro game library to Jellyfin, and now I can play them from anywhere
(www.xda-developers.com)
I set mine up using Swizzin Community Edition. You don't have to host it on Swizzin, or on a VPS at all. It isnt Docker-based (huge plus for me). You choose which services you want when you first run the script, and it configures the reverse proxy for you. Easiest way to set up that media stack that I've found.