Skip to content

unikraft/kraftkit

staging
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
July 14, 2022 14:27
February 16, 2023 13:52
February 11, 2023 18:27
February 16, 2023 13:52
February 14, 2023 12:17
November 14, 2022 09:37
December 16, 2022 13:11
February 16, 2023 13:52

KraftKit πŸš€πŸ’πŸ§°

Go Report Card

Kraftkit is a suite of tools and framework for building custom, minimal, immutable lightweight virtual machines based on Unikraft. With KraftKit, you can use unikernels at every stage of their lifecycle: from construction to production.

You can quickly and easily install KraftKit using the interactive installer. Simply run the following command to get started:

curl --proto '=https' --tlsv1.2 -sSf https://get.kraftkit.sh | sh

Alternatively, you can download the binaries from the releases pages.

Quick-start

Building a unikernel with KraftKit is designed to be simple.

Add a Kraftfile to your project directory, which specifies the libraries needed for your unikernel:

specification: v0.5

unikraft: stable

libraries:
  newlib: stable

targets:
  - name: default
    architecture: x86_64
    platform: kvm

You can also add an additional Makefile.uk which specifies any source files:

$(eval $(call addlib,apphelloworld))

APPHELLOWORLD_SRCS-y += $(APPHELLOWORLD_BASE)/main.c

Then it is a case of running:

cd path/to/workdir

kraft pkg update
kraft build

You can run your unikernel using:

kraft run

License

KraftKit is part of the Unikraft OSS Project and licensed under BSD-3-Clause.