In term of software compatibility, on Linux, you have the option of making chroots. Since the kernel devs makes a lot of effort to preserve compatibility, old software can still work fine. If I remember correctly, some kernel devs tested a while ago some really really old versions of bash, gcc, etc, and they still work fine with modern kernels.
I for one use and self-host Meshcentral. The GUI is ugly, but it works well.