Since the release of Mirage 2.0 this summer, we’ve been using it to self-host our personal Internet presences. Instead of having to manage complex deployments such as a LAMP stack (with the associated security headaches), Mirage offers the opportunity to “compile your own cloud” from a set of protocol libraries. This is an educational experience that you miss out on if using a hosted PaaS, and you also gain the freedom of running your own infrastructure and federating via open protocols such as XMPP.
In this talk, I’ll walk you through how my our homepage infrastructure works, and how to replicate it yourself to regain control of your Internet presence. The DNS and HTTP servers run as separate unikernels on the cloud, and are coordinated via the Irmin storage stack which uses Git as its communications protocol. The deployment simply uses the Travis continuous integration tool to commit the entire kernel to Git (e.g.), so you can get started very quickly using Linux, FreeBSD, OpenBSD or MacOS X.