# boco Turn container images into bootable VMs ## Example ```Dockerfile # ./example/alpine/Containerfile FROM alpine:latest CMD ["/bin/sh"] ``` ```sh # Build the container podman build ./example/alpine -t boco-alpine # Make the container bootable. boco injects a custom init program, # then packs the rootfs as a qcow2 disk. boco build qcow2 boco-alpine # Boot the image using QEMU, and drop into /bin/sh. boco boot boco-alpine # Cleanup boco image rm boco-alpine podman image rm boco-alpine ``` Can also be used to boot a more traditional systemd-based VM: ```Dockerfile FROM archlinux:latest # This works! Although you should probably add a user or some services. CMD ["/sbin/init"] ``` ## Kernel boco boots VMs using a shared kernel at `$XDG_DATA_HOME/boco/registry/vmlinuz`. Place a suitable x86 bzImage there before running `boco boot`.