Custom VM/cloud/$randomSaaS deployments are much worse when it comes to "the one guy who understands the intricate details is on vacation".
Custom VM/cloud/$randomSaaS deployments are much worse when it comes to "the one guy who understands the intricate details is on vacation".
The underlying assumption behind my comment is that you really really want to simplify your deployment as much as you can.
Unfortunately this is nearly impossible with the currently accept set of standard best practices for developing web applications, where you use a scripting language and like six different database systems (one for source of truth on data, one for caching, one for full text search, and who knows what else everyone is using these days; I honestly can't keep track).
There are many ways to make the deployment process simple. My rule of thumb is to use a compiled language (Go) and an embedded database engine.
The levels.io guy famously did it even with php https://twitter.com/levelsio/status/1102487697220820994