Skip to content
@unikraft

Unikraft

A Unikernel Development Kit. Extreme Specialization for Security and Performance.
Unikraft logo

The fast, secure and open-source
Unikernel Development Kit

Unikraft powers the next-generation of cloud native, containerless applications by enabling you to radically customize and build custom OS/kernels; unlocking best-in-class performance, security primitives and efficiency savings.

Homepage · Documentation · Report Bug · Feature Request · Join Our Discord · X.com



Features

  • Instantaneous Cold-boots

    • While Linux-based systems might take tens of seconds to boot, Unikraft will be up in milliseconds.
  • Modular Design 🧩

    • Unikraft boasts a modular design approach, allowing developers to include only necessary components, resulting in leaner and more efficient operating system configurations.
  • Optimized for Performance 🚀

    • Built for performance, Unikraft minimizes overheads and leverages platform-specific optimizations, ensuring applications achieve peak performance levels.
  • Flexible Architecture Support 💻

    • With support for multiple hardware architectures including x86, ARM, (and soon RISC-V), Unikraft offers flexibility in deployment across diverse hardware platforms.
  • Broad Language and Application Support 📚

    • Unikraft offers extensive support for multiple programming languages and hardware architectures, providing developers with the flexibility to choose the tools and platforms that best suit your needs.
  • Cloud and Edge Compatibility ☁️

    • Designed for cloud and edge computing environments, Unikraft enables seamless deployment of applications across distributed computing infrastructures.
  • Reduced Attack Surface 🛡️

    • By selectively including only necessary components, Unikraft reduces the attack surface, enhancing security in deployment scenarios. Unikraft also includes many [additional modern security features][unikraft-security-features].
  • Developer Friendly 🛠️

    • Unikraft's intuitive toolchain and user-friendly interface simplify the development process, allowing developers to focus on building innovative solutions.
  • Efficient Resource Utilization 🪶

    • Unikraft optimizes resource utilization, leading to smaller footprints (meaning higher server saturation) and improved efficiency in resource-constrained environments.
  • Community-Driven Development 👥

    • Unikraft is an open-source project driven by a vibrant community of over 100 developers, fostering collaboration and innovation from industry and academia.

Quick Start

Install the companion command-line client [kraft][kraft]:

# Install on macOS, Linux, and Windows:
curl -sSfL https://get.kraftkit.sh | sh

See [additional installation instructions][unikraft-cli-install].

Run your first ultra-lightweight unikernel virtual machine:

kraft run unikraft.org/helloworld:latest

View its status and manage multiple instances:

kraft ps --all

View the community image catalog in your CLI for more apps:

kraft pkg ls --update --apps

Or browse through one of the many [starter example projects][unikraft-catalog-examples].

Get Started

Getting started with Unikraft is easy. Yet, there are so many things to learn and explore! We recommend to choose a focus area first to get started:

Community

Looking to get involved? Contributions are welcome! There are weekly communitiy meetings on our Discord server which follow on-going projects. There are also unclaimed projects, open issues, and opportunities for bachelors and masters theses.

Affiliation

Unikraft is a member of the Linux Foundation and is a Xen Project Incubator Project. The Unikraft name, logo and its mascot are trademark of Unikraft GmbH.


LinuxFoundation logo     XenProject logo

Pinned Loading

  1. unikraft unikraft Public

    A next-generation cloud native kernel designed to unlock best-in-class performance, security primitives and efficiency savings.

    C 2.7k 1.5k

  2. kraftkit kraftkit Public

    Build and use highly customized and ultra-lightweight unikernel VMs.

    Go 234 62

  3. meeting-notes meeting-notes Public

    Archive of Unikraft Technical Meetings.

    4 19

  4. catalog catalog Public

    Unikraft Applications & Examples Catalog

    Dockerfile 36 32

Repositories

Showing 10 of 166 repositories
  • fork-glibc Public Forked from bminor/glibc

    Unofficial mirror of sourceware glibc repository. Updated daily.

    unikraft/fork-glibc’s past year of commit activity
    C 0 GPL-2.0 397 0 0 Updated Oct 31, 2024
  • kraftkit Public

    Build and use highly customized and ultra-lightweight unikernel VMs.

    unikraft/kraftkit’s past year of commit activity
    Go 234 BSD-3-Clause 62 71 42 Updated Oct 30, 2024
  • docs Public

    The front page and documentation for the Unikraft Open-Source Project.

    unikraft/docs’s past year of commit activity
  • meeting-notes Public

    Archive of Unikraft Technical Meetings.

    unikraft/meeting-notes’s past year of commit activity
    4 19 0 1 Updated Oct 15, 2024
  • unikraft Public

    A next-generation cloud native kernel designed to unlock best-in-class performance, security primitives and efficiency savings.

    unikraft/unikraft’s past year of commit activity
    C 2,712 1,495 188 111 Updated Oct 14, 2024
  • catalog-core Public

    Catalog of applications using first principles tools

    unikraft/catalog-core’s past year of commit activity
    Makefile 1 6 6 3 Updated Oct 13, 2024
  • fork-musl Public Forked from bminor/musl

    Unofficial mirror of etalabs musl repository. Updated daily.

    unikraft/fork-musl’s past year of commit activity
    C 1 133 0 0 Updated Oct 13, 2024
  • governance Public

    Documentation and automation for the Unikraft project governance model.

    unikraft/governance’s past year of commit activity
    Go 6 4 12 2 Updated Oct 3, 2024
  • catalog-for-maintainers Public Forked from unikraft/catalog

    Unikraft Applications & Examples Catalog for Maintainers

    unikraft/catalog-for-maintainers’s past year of commit activity
    Python 1 32 0 11 Updated Oct 2, 2024
  • loupe Public

    Loupe: Syscall Usage Analysis Tool

    unikraft/loupe’s past year of commit activity
    Python 25 3 4 0 Updated Sep 24, 2024