Same here. I have owned my domain and ran my email server for six years now. Investing a week worth of afternoons harls really paid off and i can do neat things like having infinite email addresses via a catch-all address.
By the way, give a look at mail-in-a-box, another cool project that implements a ready to use mail server with great functionalities.
Used to manage it all manually, set up https://mailcow.email/ after a server move a couple years ago. It's been great, running inside docker now via docker-compose alongside https://github.com/JrCs/docker-letsencrypt-nginx-proxy-compa... for automatic letsencrypt for the web interface along with my additional web services hosted on the same server. I had one minor hiccup when upgrading wherein I had to restart all docker containers, that's about it in terms of maintenance.
I did the same and used my catch-all extensively which I almost regret nowadays because it would make migration to a hosted service much more difficult if I ever wanted to. At least I know of no trustworthy commercial mail hoster which allows catch-all-addresses without requiring a much more expensive 'business' account.
By the way, give a look at mail-in-a-box, another cool project that implements a ready to use mail server with great functionalities.