Unikernel Devel

Why we need unikernel.org


[see the original post at: https://mirage.io/blog/unikernel-org]

Unikernels are specialised single address space machine images that are constructed by using library operating systems. With MirageOS, we’ve taken a clean-slate approach to unikernels with a focus on safety. This involved writing protocol libraries from the ground up and it also afforded the ability to use clean, modern APIs.

Other unikernel implementations have made trade-offs different to those made by MirageOS. Some excel at handling legacy applications by making the most of existing OS codebases rather than building clean-slate implementations. Some target a wide array of possible environments, or environments complementary to those supported by MirageOS currently. All of these implementations ultimately help developers construct unikernels that match their specific needs and constraints.

As word about unikernels in general is spreading, more people are trying to learn about this new approach to programming the cloud and embedded devices. Since information is spread across multiple sites, it can be tricky to know where to get an overview and how to get started quickly. So to help people get on board, there’s a new community website at unikernel.org!

The unikernel.org community site aims to collate information about the various projects and provide a focal point for early adopters to understand more about the technology and become involved in the projects themselves.

Over time, it will also become a gathering place for common infrastructure to form and be shared across projects. Early examples of this include the scripts for booting on Amazon EC2, which began with MirageOS contributors but were used and improved by Rump Kernel contributors. You can follow the email threads where the script was first proposed and ultimately provided EC2 support for Rumprun. Continuing to work together to make such advances will ease the process of bringing in new users and contributors across all the projects.

Please do visit the site and contribute stories about how you’re using and improving unikernels!

Thanks to Anil, Jeremy and Mindy for comments on an earlier draft.


To help facilitate communication amongst the projects, I also set up this flat forum, devel.unikernel.org.

I spent some time thinking about what forms of communication we could use and although a mailing list is a popular option, it can become onerous if you need to join many of them.

After some searching, I decided to try Discourse. There is some more discussion and thoughts in the related GitHub issue (see link below) but the features of this site are:

  • You can interact almost entirely by email if you wish (similar to GitHub Issues)
  • It’s open-source, so can be self-hosted in the future
  • Good web-interface, which is much more convenient than email archives
    • Search functionality
    • SEO friendly
    • Easy for newcomers to join existing threads

We will have to iterate over time to make sure this site works for everyone but I hope this is a good start!