It's definitely achievable and I'd encourage anyone to play around with self hosting.
The main thing to acknowledge before getting started is that it's an ongoing commitment, like a puppy. Getting it to work initially is the easy part, you can follow a guide and have something working in a few hours of effort. Running in to problems later on is the tricky part, automated backups and upgrades et cetera, something needs a re-start, things just stop working for some reason.