I'm constantly surprised at how much deployments cost. AWS makes it easy to spin up servers, so people do, and they have tens of machines sitting idle when one would do. It seems that people saw containers and thought "finally, each instance can easily have its own machine", whereas I've always thought of containers as tools for putting many things on the same machine.
I run a Dokku instance on a Hetzner server and it's been fantastic, I host 10-20 of my projects with thousands of daily users there without it even breaking a sweat. My only regret is that I should have used a single database instead of one DB per project, but I was lazy.