See also packaging
docker run unikerneldemo at DockerCon EU (nov 2015)
LightVM - Systems and Machine Learning
We achieve lightweight VMs by using unikernels for specialized applications and with Tinyx, a tool that enables creating tailor-made, trimmed-down Linux virtual machines. LightVM can boot a VM in 2.3ms which comparable to fork/exec on Linux (1ms), and two orders of magnitude faster than Docker. On a somewhat slower server with 64 cores, LightVM can pack thousands of VMs with memory and CPU usage comparable to that of processes
HermiTux | A binary-compatible unikernel; Apr 2019.
HermiTux is binary-compatible with Linux: it can run native Linux executables.
Although being a proof-of-concept, HermiTux supports multiple compiled (C, C++, Fortran) and interpreted (Python, LUA) languages. It provides binary analysis and rewriting techniques to optimize system call latency and modularize a kernel in the presence of unmodified binaries. It supports statically and dynamically linked programs, different compilers and optimization levels. HermiTux also provides basic support for multithreading, debugging and profiling.
solo-io/unik: The Unikernel Compilation and Deployment Platform
UniK (pronounced you-neek) is a tool for compiling application sources into unikernels (lightweight bootable disk images) rather than binaries. UniK runs and manages instances of compiled images across a variety of cloud providers as well as locally on Virtualbox. UniK utilizes a simple docker-like command line interface, making building unikernels as easy as building containers.
Unik supports the following unikernel types:
And supports the following providers:
More info on Unik:
Unikraft by NEC laboratories Europe ” toolchain and library Operating System which construct unikernels which are highly specialized software bundles that consist of a target application along with just the operating system and libraries features it needs to run.”
… the symmetric multiprocessing story - Unikernels don’t have such a story. They are inherently single core.
… I just couldn’t ignore was that Linux let you configure it into very small and secure configurations with full SMP support AND you could run ANY existing Linux languages or applications on those tiny systems.
Unikernels generally seemed to need special builds and toolchains and configuration systems and recompilations to get them to run applications.
AUTHORS’s takeaway – “I had come to see that it was possible to build very very small Linux systems, compatible with all Linux software, with all the security advantages of Unikernels, but with the benefit of symmetric multiprocessing and all the Linux driver support and community support.”
Linux compatibility in IncludeOS | Hacker News including a note about rumpkernel maintainer being no longer actrively involved in the project.
Running Forth Unikernels on nanovms.com
dysinger/restack: Full Stack ReasonML Tutorials
This is a tutorial series on using the ReasonML language to build MirageOS unikernels and user-facing applications with tools like Reason-React. Using the same language for the entire stack is appealing. You’ll likely be able to stay in one editor, become very familiar with the syntax, and share common code between the layers of your application.