Lots of developers seem to love NixOS, I think I’m with you in not having been able to set it up exactly how I wanted. Silverblue is definitely on the ‘play with’ list.
I use Alpine for containers (LXC usually, sometimes Docker). Super tiny, very very minimal. apk add <package>
and you’re golden. PostmarketOS even gets basically Alpine working on things like Pinephones, which is fun to play with.
I use virtual hosts frequently with Apache, it’s definitely a good way to go.