scorpiox-vm container

KVM virtual machine runner with direct kernel boot. Launches lightweight Linux VMs using KVM hardware virtualization, bypassing traditional bootloaders for fast startup.

linux-x64 linux-arm64

⚙️ Flags & Options (1)

Flag Short Description Takes Value
--verbose Enable verbose output with detailed KVM and boot diagnostics No

💡 Usage Examples

Boot a minimal Linux kernel in a KVM VM
$ scorpiox-vm --kernel ./bzImage --rootfs ./rootfs.ext4
# Boots directly into the kernel — no BIOS, no GRUB, no UEFI
[ 0.000000] Linux version 6.6.0 (scorpiox@build) ...
[ 0.012345] KVM setup done
/ #
Run with verbose diagnostics
$ scorpiox-vm --verbose --kernel ./bzImage --rootfs ./rootfs.ext4
# Prints KVM capability checks, memory layout, vCPU config
[vm] KVM API version: 12
[vm] vCPU count: 2
[vm] RAM: 512 MiB mapped at 0x7f0000000000
[vm] Kernel loaded: 8.2 MiB at 0x100000
[vm] Boot params at 0x10000, cmdline at 0x20000
[vm] Entering KVM_RUN loop...
Use as a sandbox for scorpiox code sessions
# scorpiox-vm is used internally by scorpiox-code to provide
# hardware-isolated execution environments on Linux hosts.
# The direct kernel boot approach avoids the ~2s BIOS/GRUB delay,
# bringing VM cold-start to under 200ms.

$ scorpiox-vm --kernel /opt/scorpiox/vmlinuz \
    --rootfs /opt/scorpiox/rootfs.img
/ # whoami
root
/ # uname -r
6.6.0-scorpiox
Verify KVM support on the host
# scorpiox-vm requires /dev/kvm — check it exists:
$ ls -la /dev/kvm
crw-rw---- 1 root kvm 10, 232 May 29 00:00 /dev/kvm

# If missing, enable KVM in your kernel or hypervisor config.
# On cloud instances, use metal or nested-virt enabled instance types.
Direct kernel boot with custom kernel command line
$ scorpiox-vm --kernel ./bzImage \
    --rootfs ./rootfs.ext4 \
    --append "console=ttyS0 root=/dev/vda rw init=/bin/sh"
# Custom kernel cmdline is passed directly to the boot params struct

📦 Source & Build Info

Source File
scorpiox/scorpiox-vm.c
Lines of Code
3,295
Dependencies
None