I remember a brief period in the early heyday of the LAMP stack where the A meant "Apache" and nothing else it felt like "Just Install Apache" was all you needed to self-host random PHP applications you would find.
It feels like we have all the raw technologies to make it easier than ever, it's just all the "glue" that sucks (or doesn't exist).
- Home IPv6 is so much easier to work with than workarounds I recall doing with IPv4 as a kid. Static IPv6 is actually achievable and AAAA only DNS works in more places than not today.
- Let's Encrypt does make the TLS dance much simpler.
- Docker containers do give you cross-platform sort-of sandboxed virtual environments that can run just about any app you like in any programming language. No more L or P dependencies in the modern LAMP stack equivalent with tools like Docker around.
- SQLite has shifted into being a game changer in database serving. In the old classic LAMP stack installing and maintaining MySQL was three fourths of the "fun" (and just about 90% of the pain) and there's no great way to sandbox a MySQL server other than to spin up multiple servers (which is a bit much for a modest self-hoster), but every application could use its own SQLite DBs easy enough, the SQLite DBs can be embedded in and don't have to leave app containers, and that should scale "good enough" for self-hosters. (SQLite is also the choice of the linked application here.)
In terms of glue, I feel like there's a meta-narrative to explore of "single docker container apps designed to be self-hosted" and maybe a meta-"app server" with an easy to use interface to control them. I don't know what you'd call that pattern or how much interest there would be in this SaaS-heavy world.
Some other half-baked thoughts:
- fly.io's business model is SaaS for obvious reasons, but their tools look "close" to the above desirable "glue", minus the parts that are SaaS for business reasons. Vercel is a similar example of an off-the-shelf tool that might be handy for self-hosting if it wasn't so focused on supporting SaaS business models.
- The last time I did any serious self-hosting on a VPS I really liked Cherokee's [1] configuration approach: it makes sense for a web server to itself be configurable as a web app. Similar to how cPanel got so popular in early LAMP stack SaaS days (is it still popular?) simply because it offered an easy web app UI to manage an application stack. (Looks like Cherokee's documentation hasn't been updated in a few years, and at least from the documentation still doesn't even have Let's Encrypt (ACME) support out of the box, which seems a shame.)
It feels like we have all the raw technologies to make it easier than ever, it's just all the "glue" that sucks (or doesn't exist).
- Home IPv6 is so much easier to work with than workarounds I recall doing with IPv4 as a kid. Static IPv6 is actually achievable and AAAA only DNS works in more places than not today.
- Let's Encrypt does make the TLS dance much simpler.
- Docker containers do give you cross-platform sort-of sandboxed virtual environments that can run just about any app you like in any programming language. No more L or P dependencies in the modern LAMP stack equivalent with tools like Docker around.
- SQLite has shifted into being a game changer in database serving. In the old classic LAMP stack installing and maintaining MySQL was three fourths of the "fun" (and just about 90% of the pain) and there's no great way to sandbox a MySQL server other than to spin up multiple servers (which is a bit much for a modest self-hoster), but every application could use its own SQLite DBs easy enough, the SQLite DBs can be embedded in and don't have to leave app containers, and that should scale "good enough" for self-hosters. (SQLite is also the choice of the linked application here.)
In terms of glue, I feel like there's a meta-narrative to explore of "single docker container apps designed to be self-hosted" and maybe a meta-"app server" with an easy to use interface to control them. I don't know what you'd call that pattern or how much interest there would be in this SaaS-heavy world.
Some other half-baked thoughts:
- fly.io's business model is SaaS for obvious reasons, but their tools look "close" to the above desirable "glue", minus the parts that are SaaS for business reasons. Vercel is a similar example of an off-the-shelf tool that might be handy for self-hosting if it wasn't so focused on supporting SaaS business models.
- The last time I did any serious self-hosting on a VPS I really liked Cherokee's [1] configuration approach: it makes sense for a web server to itself be configurable as a web app. Similar to how cPanel got so popular in early LAMP stack SaaS days (is it still popular?) simply because it offered an easy web app UI to manage an application stack. (Looks like Cherokee's documentation hasn't been updated in a few years, and at least from the documentation still doesn't even have Let's Encrypt (ACME) support out of the box, which seems a shame.)
[1] https://cherokee-project.com/