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

Latest commit

GitHub-Close: #212
GitHub-Close: #196
GitHub-Close: #197
GitHub-Close: #207
GitHub-Close: #208
GitHub-Close: #209
Reviewed-by: Alexander Jung <alex@unikraft.io>
Approved-by: Alexander Jung <alex@unikraft.io>
be86674

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
July 14, 2022 14:27
September 16, 2022 15:19
January 14, 2023 17:50
November 14, 2022 09:37
December 16, 2022 13:11
February 5, 2023 12:19
February 5, 2023 12:19

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.