HACKER Q&A
📣 open-source-ux

Is there a simple, easy way non-tech users can install server software?


I've asked this question repeatedly in some form every year for the past few years [1] and the answer is always (and depressingly) a resounding 'no': there is no easy and simple way for non-technical users to successfully install your web app software on a server.

If you're a developer who doesn't want to provide a SaaS service (or wants to provide a self-hosting solution in addition to a SaaS one), a simple installation process for your customers should be a big win. But the needlessly complicated process of server install makes this difficult to impossible.

Would it be too conspirational to suggest that maybe SaaS providers prefer self-hosting a web app remain a complicated matter so it doesn't lessen the appeal of their hosted service? Of course, self-hosting also opens up opportunities for many companies and developers. (Think of the one-click WordPress installs available from a choice of thousands of providers.)

And just to pre-empt the suggestions that Docker, Cloudtron, or Sandstorm are possible options: none of these are easy or simple.

The one-click installs provided by some VPS providers (Digital Ocean, Linode etc) might be an option. Has anyone had success with this route with customers or users?

It's a bit depressing that in 2020 we still don't have a simple, easy way to install web apps on a server.

Does anyone know of a way non-technical customers or users can self-install web apps on a server in an easy and simple way that isn't time-consuming or requires heavy technical support?

--

[1] Previous questions on this topic:

Jul 2017: https://news.ycombinator.com/item?id=14781420

Jan 2018: https://news.ycombinator.com/item?id=16250959

Nov 2018: https://news.ycombinator.com/item?id=18385497


  👤 detaro Accepted Answer ✓
There is no one-size-fits-all answer, so given your tone I fully expect you to dismiss all of this because users can't handle any difficulty, but some options:

Make a web installer that works on any random PHP-enabled webspace. Millions have installed WordPress etc that way.

Provide a VM image ("appliance"), and/or an easy to run installer that completely sets up a fresh Ubuntu install, secures it, ... compare "turnkey Linux".

Provider-specific pathways: put an AMI on AWS store, provide an "run on Heroku" button, ..., although initial setup of those providers isn't entirely trivial.

Overall caveat: Non-technical users should only be using hosted or maintained platforms, so you either need to target something that provides it or provide it yourself as part of the product installation. No easy installer for a fresh system that then is left with bad defaults and no updates, if you target non-technical users that's your responsibility.


👤 jrepinc
What about FreedomBox: https://www.freedombox.org/ — "FreedomBox is a private server for non-experts: it lets you install and configure server applications with only a few clicks. It runs on cheap hardware of your choice, uses your internet connection and power, and is under your control. "

👤 hjek
I like how some web apps, such as Gitea[0], are just packaged as a binary that you run right away.

So much easier than following a long list of instructions. If your users can't download and run a binary, then they have no business running a web service anyway.

[0]: https://gitea.io


👤 ridruejo
Have you checked out Bitnami (https://bitnami.com) ? I am one of the founders