Files
boco/README.md
hulthe 53587780c3
CI / build (push) Successful in 13s
Add systemd example to README.md
2026-09-11 18:08:37 +02:00

42 lines
854 B
Markdown

# 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`.