Skip to content

Bootc VMs

Run Bazzite AI directly from OCI container images as virtual machines using bcvk (bootc virtualization kit). Unlike QEMU with pre-built QCOW2 images, bootc runs container images directly, making it ideal for testing and rapid iteration.

Prerequisites

Command Description Recording
ujust install bcvk Install bootc virtualization kit
ujust config libvirtd enable Enable virtualization service

Quick Start

Step Command Description Recording
1 ujust bootc prereqs Verify prerequisites
2 ujust bootc add Create VM
3 ujust bootc start Start VM
4 ujust bootc ssh Connect via SSH

VM Lifecycle

Command Description Recording
ujust bootc add Create persistent VM
ujust bootc list List all bootc VMs
ujust bootc status Show VM status
ujust bootc start Start VM
ujust bootc ssh SSH into VM
ujust bootc stop Stop VM
ujust bootc delete Delete VM

Image Management

Command Description Recording
ujust bootc images List available images
ujust bootc export Export as qcow2/raw

Bootc vs QEMU

Both methods run Bazzite AI as a VM but serve different purposes:

Feature Bootc QEMU
Source OCI container images Pre-built QCOW2 images
Best For Testing, CI/CD, rapid iteration Development VMs, production-like
VNC Access No Yes
Home Directory Sharing No Yes (virtiofs)
Cloud-Init Customization Via bcvk Full cloud-init support
Setup ujust install bcvk Pre-installed

Use Bootc when:

  • Testing container image changes before building QCOW2
  • Quick ephemeral testing sessions
  • CI/CD pipeline testing
  • Validating bootc image updates

Use QEMU when:

  • Long-running development environments
  • Need VNC access to desktop
  • Need shared directories (virtiofs)
  • Production-like testing

Parameters

Parameter Default Description
VM_NAME bazzite-bootc VM name
IMAGE testing Image tag or full reference
CPUS 4 Number of CPU cores
RAM 8192 RAM in MB
DISK_SIZE 50G Virtual disk size
SSH_PORT 2222 SSH port forwarding

Troubleshooting

bcvk Not Found

ujust install bcvk
bcvk --version

Port Already In Use

# Check what's using port 2222
ss -tlnp | grep 2222

# Use different port for persistent VM
ujust bootc add dev SSH_PORT=2223

VM Won't Start

ujust config libvirtd enable

See Also