Sandstorm – Personal Cloud Platform
sandstorm.io
sandstorm.io
I am kind of sad I didn't think of this myself!
EDIT: Answering my own question: https://groups.google.com/forum/#!searchin/sandstorm-dev/doc...
There is a big difference is use case here: Docker aims to be configurable enough that you can take arbitrary off-the-shelf Linux apps -- or even entire distros -- and make them run in a container. Sandstorm, on the other hand, requires apps to be ported to a very specific environment. The porting isn't usually very hard, but it means Sandstorm doesn't need so much configurability and can make stronger assumptions about how an app behaves which lets us do more interesting things with it. For example, Sandstorm can implement unified login and sharing across all apps, it can enforce security between apps, it can transparently update an app without potentially disrupting its storage, and it can selectively give apps access to each other's semantic APIs rather than just low-level ports.
All that said, using Docker as a tool to assist in building app packages may make sense; we actually build some of our apps this way. This -- and the general difference between Docker and Sandstorm -- was discussed a bit in this blog post:
In contrast, Sandstorm apps are isolated by default and can be written in any language. Sandstorm does not provide a shared "filesystem" but rather gives some private storage space to each app and then expects them to talk to each other via RPC if they want to share data.
We (the Sandstorm team) are actually thinking of porting OwnCloud to Sandstorm as an app. :)
https://github.com/sandstorm-io/sandstorm/wiki/Porting-Guide
Though, that guide uses a toy example. We should probably write docs covering more realistic cases.