README
¶
KraftKit 🚀🐒🧰
Kraftkit is a suite of tools and framework for building custom, minimal, immutable lightweight virtual machines based on Unikraft. With Kraftkitt, you can use unikernels at every 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, simply 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
.
Directories
¶
Path | Synopsis |
---|---|
cmd
|
|
internal
|
|
qemu
Code generated by kraftkit.sh/tools/go-generate-qemu-devices.
|
Code generated by kraftkit.sh/tools/go-generate-qemu-devices. |
tools
|
|
dockerfile-llb-frontend
Module
|
|
github-action
Module
|
|
go-generate-qemu-devices
Module
|
|
protoc-gen-go-netconn
Module
|
|
tui
|
|