Jerboa
Unikernel engine for building, running, and orchestrating VM-based application images.
What It Is
Jerboa is split into two parts:
jerboa: the CLIjerboad: the daemon that owns builds, images, VM lifecycle, networks, and compose state
The daemon is Linux-only. On Windows, the CLI runs on the host and boots the daemon inside a dedicated WSL2 distro managed by jerboa daemon.
Current Capabilities
- Build unikernel images from:
- static ELF binaries
- Go, Node.js, Python, Rust, and
rawprojects
- Run VMs on:
- QEMU
- Firecracker
- Manage:
- images
- volumes
- bridge networks with TAP-backed guest connectivity
- internal DNS
- compose stacks
- Observe:
- VM logs
- live stats
- Prometheus metrics
- OTLP traces
- a read-only dashboard
Important Runtime Constraints
- Native VM execution requires Linux.
- Port publishing requires a managed network (
--network). - TCP publishing works today through a userspace forwarder.
- UDP port mappings parse and persist, but the current forwarder skips them with a warning.
- The daemon binary is built only for Linux; Windows uses WSL2.
Repo Shape
cmd/jerboa/- CLI commandscmd/jerboad/- daemon entrypointcmd/jerboa-agent/andinternal/agent/- local HTTP/SSE sidecar for the desktop appinternal/vm/- VM lifecycle, QEMU, Firecracker, stats, persistenceinternal/image/- image store and build pipelineinternal/network/- bridge, TAP, IPAM, port forwarderinternal/compose/- compose parser and orderinginternal/wsldistro/andinternal/wslboot/- Windows/WSL integrationtests/integration/andtests/e2e/- higher-level verificationkernel/- Nanos-derived kernel tree and tooling
Versions In This Repo
- CLI version source:
VERSION - Kernel version source:
kernel/VERSION
At the time of this documentation update:
- CLI version:
v0.48.0 - Kernel version:
v0.1.2