I love self-hosting a bunch of apps I use, so I don’t have to rely on anyone but my ISP for my digital life. Jellyfin, Immich, forgejo, memos and more.
But I know this isn’t for everyone. I just recently spent about 3 hours doing routine maintenance and fixing an issue (I caused) and I know not everyone is into doing that kind of thing.
I also wonder what it would take to get more people into this self-hosting thing. I.e., to get them off of subscription streaming services, Google, etc…, so they can own their own data, stop feeding the machine and for the general betterment of humanity. What would the world be like if half of all adults self-hosted their own services? Or even 25%?
So, for discussion, is increasing the number of self hosters a good idea? How can we make help that process along?
Edit: Fixed typos
Totally make sense. But, can you imagine a way for a company / non-profit to make it easier for people not able / willing to learn to fix things themselves?
My thought is it could happen, if structured correctly to keep the public good as its aim.
Hmmmm. We’ve had single click LAMP installs way back in the early 00’s. Heck, web servers were a single check box in OSX. It’s just gotten really complicated since then.
Data centers work great because tech and staff work together in proximity to keep things smooth. To decentralized a data center …
I’d start with a VPN; without which, you’d have too many unknowns. I’d have local user space (probably a VM or docker environment) linked to a remote auto-magically configured proxy server and network infrastructure. (A lot of people do this anyway with wire guard or the like) Complete automation is the key here.
Users would install apps from docker (preconfigured) and the environment automatically establishes the VPN and sends port data and settings to the proxy service. DNS/fail2ban/security is set up, and goes live in a minute or two. Of course that wouldn’t work for things like Pihole or adguard.
User is responsible for disk/CPU, service provider for networking, well except ISP stuff. But anything average-user-easy will have to be mostly prepackaged for ease of use.
Oh, and if there are things that go wrong, clear explanations are essential. Things like “could not bind 0.0.0.0:80” could be “Hey dimwit, you already used port 80 for XXXX program. Pick something else!”
Or, you know, a script could do that.