Odd consideration, but... I use 16Gb of ram and I have zero swap space and I've never seen a freeze in the three years this system has been assembled.
It could just be the way I tend to use my PC, light photo manipulation, some audio editing, some gaming just not AAA. I'm never stressing my system unless I'm opening a compressed file or rendering a video.
My one... battlefield with docker was trying to have a wireguard VPN system in tandem with an adguard DNS filter and somehow not have nftables/iptables not have a raging bitch fit over it because both wireguard and docker edit your table entries in different orders and literally nothing I did made any difference to the issue, staggering wireguard's load time, making the entries myself before docker starts (then resolvconf breaks for no reason). Oh, and they also exist on a system with a Qbittorrent container that connects to a VPN of its own before starting. Yay!
And that's why all of that is on a raspberry pi now and will never be integrated back into the image stacks on my main server.
Just... fuck it, man. I can't do it again. It's too much.