I have a non-standard deployment that works well for my needs. I run a Nerves instance on https://www.vultr.com by using nerves_system_vultr. It costs me $5/mo. I have an SQLite db I keep on the same host.
I use it to run DepViz and a few other tiny sites. If you’re interested in how it works you can find the code on GitHub: GitHub - axelson/vps.
For me the biggest downsides for hosting web apps in this way is that all the dependencies have to be in sync and it’s hard to add external dependencies (since there’s no apt get install
).