awesome-unikernels
awesome-unikernels copied to clipboard
:zap: Curated list of unikernel resources
Awesome Unikernels 
Secure, lightweight and high performance approach to application delivery
Contents
- Introduction
- Projects
- Linux Binary Compatible
- Language oriented
- Generic
- Unikernel-like
- Tools
Introduction
- Unikernel and Immutable Infrastructures - Introductory white paper maintained by CETIC engineers.
Projects
Linux Binary Compatible
- OSv - Modular unikernel able to execute unmodified Linux binaries, developed in C++.
- Nanos - Linux binary compatible unikernel focused on security.
- HermiTux - Research project from Virginia Tech, demonstrating advanced optimizations.
Language oriented
- HaLVM - Port of Glasgow Haskell compiler producing Xen optimized unikernels.
- LING - Erlang/Elixir unikernel development toolkit targeting Xen.
- MirageOS - OCaml unikernel development library.
- runtime.js - KVM oriented unikernel for running JavaScript applications via the V8 engine.
- IncludeOS - Feature rich unikernel development library for C++.
- Toro Kernel - Lazarus/FreePascal toolkit for unikernel development.
- Ultibo Core - Lazarus/FreePascal unikernel targeting Raspberry Pi as the runtime environment.
- rekernel - Minimal setup for developing unikernels in ReasonML.
- Union - POSIX compliant unikernel written in Rust.
- binaryno - Rust unikernel running on bare ARM CortexM hardware.
Generic
- ClickOS - Efficient network function virtualization platform, optimized for Xen and developed by NEC.
- Clive - Research project from Rey Juan Carlos University (Madrid), developed in Go.
- Mini-OS - Reference kernel distributed with Xen.
- Rump Kernels - Development platform reusing NetBSD components for producing efficient unikernels.
- Firecracker - AWS's VM isolation engine, using in products such as Lambda and Fargate.
- Unikraft - Collection of building blocks for unikernel development.
- BareMetal - Self described as an exokernel, it can be used as the starting point for unikernel development.
- HermitCore - A C-based, lightweight unikernel project from Aachen University.
- unicycle - Unikernel application framework developed in C.
- EbbRT - Boston University unikernel research project.
- Nautilus - Aerokernel from Sandia National Laboratories, supporting bare metal x86_64 and Xeon Phi.
- JML - Proof of concept for a minimal web server unikernel implementing its own language.
- UNICORE - Common code base and toolkit for deployment of applications to secure and reliable execution environments.
Unikernel-like
- Drawbridge - Research prototype platform from Microsoft.
- Graphene - Library OS optimized for Intel SGX.
Tools
- OPS - Orchestration tool for building and deploying Nanos based images.
- Capstan - Orchestration tool for packaging and running OSv based images.
- UniK - Unikernel compiler supporting a Firecracker, rump kernels, OSv, IncludeOS and MirageOS.
- Solo5 - Middle-ware interfacing unikernels with the host systems.
- Albatross - MigrageOS unikernel orchestration, via Solo5.
Contribute
Contributions welcome! Read the contribution guidelines first.