I setup a Pi-hole server on an AWS instance about a year ago. It was pretty straight forward and runs just great of the free tier. One of the advantages is that you can then use the Pi-hole server from multiple LANs if you want, or devices not on your LAN. After talking with some folks, I decided to put together a tutorial on how to do it, focused on people without AWS experience.
May it meet your pi-hole needs.