When combined with --emulated, this enables running VMs with an architecture different from the host's. Closes #62. Signed-off-by: Alberto Faria <afaria@redhat.com> |
||
---|---|---|
.fmf | ||
.github/workflows | ||
docs | ||
embed | ||
examples | ||
plans | ||
src | ||
tests | ||
util | ||
.editorconfig | ||
.gitignore | ||
.packit.yaml | ||
Cargo.lock | ||
Cargo.toml | ||
LICENSE | ||
Makefile | ||
README.md | ||
build.rs |
README.md
The crun-vm OCI Runtime
crun-vm is an OCI Runtime that enables Podman, Docker, and Kubernetes to run QEMU-compatible Virtual Machine (VM) images.
- Run VMs as easily as you run containers.
- Manage containers and VMs together using the same standard tooling.
- No need for in-depth knowledge on virtualization technologies like libvirt or KubeVirt.
Major features
- Use it with Podman, Docker, or Kubernetes.
- Launch VMs from VM image files present on the host or packaged into container images.
- Control VM CPU and memory allocation.
- Provide cloud-init and Ignition configurations to VMs.
- Mount directories into VMs.
- Pass block devices through to VMs.
- Expose qcow2 files and other disk images to VMs as block devices.
- Forward ports from the host to VMs.
podman exec
/docker exec
/kubectl exec
into VMs.
Documentation
- Installing crun-vm
- Using crun-vm as a Podman or Docker runtime
- Using crun-vm as a Kubernetes runtime
[!TIP] See also how you can combine crun-vm and Podman Quadlet to easily manage both containers and VMs through systemd.
License
This project is released under the GPL 2.0 (or later) license. See LICENSE.