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 execinto 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.