First Lemmy post :D
I joined a new company a year ago. They had a very limited laptop choice, so I settled on an X12 tablet. (I lug my laptop frequently, so I wanted something light.) But then I discovered ctrl/fn switching is only doable via a Windows app. So I decided to try Windows again for a while.
But I grew increasingly frustrated with Windows (but reversed ctrl/fn frustrates more), so I started fiddling with capturing USB packets, and captured what the Windows software sends. But I failed to send the packets.
But then someone pinged me on the repo I had placed my captures in, that they'd written the program to send the packets.
Already too long story: I'm now a happy Linux user on the X12, posting the tool for more visibility.
IMHO, it really depends on the specific services you want to run. I guess you are most familiar with Docker and everything that you want to run has a first-class-citizen Docker container for it. It also depends on whether the services you want to run are suitable for Internet exposure or not (and how comfortable you are with the convenience tradeoff).
LXC is very different. Although you can run Docker nested within LXC, you gotta be careful because IIRC, there are setups that used to not work so well (maybe it works better now, but Docker nested within LXC on a ZFS file system used to be a problem).
I like that Proxmox + LXC + ZFS means that it's all ZFS file systems, which gives you a ton of flexibility; if you have VMs and volumes, you need to assign sizes to them, resize if needed, etc.; with ZFS file systems you can set quotas, but changing them is much less fuss. But that would likely require much more effort for you. This is what I use, but I think it's not for everyone.