Something worth adding to the list: Enable rate limiting.
I'm also running my business on a single server, works perfectly, except for one time when someone tried to find some content with hash IDs through bruteforce. No problem, a tiny VPS can handle one malicious user. Except the amount of errors logged by nginx filled up the disk.
Nice setup! I think containerization is worth considering if you have multiple applications.
I run 5-7 on one server, with DB, using CapRover on a $5/month Hetzner server. Serve probably around 5k users.
This looks like a "send-only" server.
> sudo ufw default deny incoming
Seriously, what does one do when accepting connections, given the onslaught of data-hungry bots out there?
I wouldn't want to deal with that in any upcoming planned servers and services.
I want to upvote this 100x
Do not underestimate the power of a single server to host you app. Sure it won't work in _all_ situations but omg you can get so much out of a single $30/month VPS .. we've been indoctrinated that everything needs to be on hyperclouds and mega scale. But that brings so much cost and complexity that most applciations don't need.