I was hoping for a transportation metaphor, as per my last post, but when given lemons, invoke the Sand People!
A couple of days ago Tim Owens tweeted about a new platform he was exploring called Sandstorm.
Who wants to play with @SandstormIO with me. Got it up and running on a server.
— Tim Owens (@timmmmyboy) January 16, 2015
Tim moves pretty fast, so it usually takes me some time to catch up on stuff like this. But when he quickly demoed what it does, I was really interested because it gets at how the web is changing in terms of hosting, micro-services, and infrastructure more generally.
Sandstorm is an open source hosting platform for personal instances of web apps. Users can upload and install arbitrary software. In addition to improving privacy and control, this is the only way to make Open Source web apps viable.
Effectively, Sandstorm is an open source platform that enables you to host open source applications that aren’t predetermined by more mainstream, highly controlled hosting software like CPanel. Through software like CPanel few indieweb apps can get distribution, effectively cutting them off from a user base. Sandstorm provides open source software that allows you to run docker containers with various applications—which are not limited to the LAMP environment===as well as enabling you to upload and run your own applications.
So, with Sandstorm you can basically provide an indie web distribution hub, kinda like the Merge or Dischord Records model for distributing alternative music. This approach provides the ability to start building a decentralized web hosting infrastructure. This is exciting for us, because this is exactly what we’ve been dreaming of at Reclaim Hosting for the last couple of months. In fact, we brought the great Kin Lane in to help us architect this approach. And what’s cool is that Sandstorm.io is just another indicator that this is a viable approach right now (or even the only viable approach), and we would be well served to follow our nose. So now what we’re really wondering is how much of this vision does the open source version of Sandstorm already take care of? And how much would we have to do to fit it into our model?
So, given Tim got the open source version open and running on a Reclaim Hosting server, I decided to start exploring a bit. And I was pretty impressed. You login (you have the option of using your Google or Github credentials) and immediately see a list of selected applications you can install, such as WordPress, Ghost, EtherPad, EtherCalc, MediaWiki, and several more.
You click the “Install” button and you get a confirmation…
Once you do, your done. The micro-application is installed on its own container-based micro-server using Docker, or so I believe. And while you get an ugly URL out of the gate, you can map a domain on top of it.
I mapped a ghost installation on ghost.jimgroom.net and it worked almost instantaneously.
And as you’ll notice in the following screenshot, I have Etherpad, Ghost, and WordPress installed, and I was struck by how easy it was compare to the visual confusion and clutter of CPanel. This is the dashboard for a hosting account with three applications. Pretty sparse, and less is more. Right now I am mapping subdomains manually, but that is something we could automate pretty easily at Reclaim Hosting. Ad after that, voila! We can have a whole series of indie web apps for people to choose from, and enable them to install and manage their own applications using docker-deployed micro-instances. (I wonder if I said that right?)
So, everything I was speculating about in the last part of my presentation at University of Oklahoma is, in many ways, made concrete in a platform like Sandstorm. If you are interested in checking it out, go to http://sandstorm.reclaimhosting.com/ I think you should be able to login in, if you can’t let us know and we’ll get you access. You can alos demo this right on Sandstorm’s site as well.