Skip to main content

Crate herolib_virt

Crate herolib_virt 

Source
Expand description

§herolib-virt

Virtualization and containerization tools for building, managing, and deploying containers, virtual machines, filesystem layers, and Kubernetes clusters.

§Features

  • Buildah: OCI/Docker image building with builder pattern API
  • Nerdctl: Container lifecycle management with containerd
  • QCOW2: Disk image management and creation
  • Cloud Hypervisor: Virtual machine management
  • Virtiofsd: High-performance directory sharing for VMs
  • Kubernetes: Cluster management, configuration, and operations
  • Cross-Platform: Works across Windows, macOS, and Linux
  • Rhai Integration: Full support for Rhai scripting language (optional feature)
  • Error Handling: Comprehensive error types and handling

§Modules

  • buildah: Container image building with Buildah
  • nerdctl: Container management with Nerdctl
  • qcow2: QCOW2 disk image management
  • cloudhv: Cloud Hypervisor virtual machine management
  • virtiofsd: High-performance directory sharing for virtual machines
  • [kubernetes]: Kubernetes cluster management and operations (requires kubernetes feature)

§Example

use herolib_virt::buildah;

// Create a container builder
let mut builder = buildah::Builder::new("mybuilder", "alpine:latest")?;
builder.run("apk add curl")?;
let image = builder.commit("myimage")?;

Re-exports§

pub use buildah::BuildahError;
pub use buildah::Builder;
pub use buildah::ContentOperations;
pub use cloudhv::CloudHypervisorError;
pub use nerdctl::Container;
pub use nerdctl::ContainerStatus;
pub use nerdctl::HealthCheck;
pub use nerdctl::NerdctlError;
pub use qcow2::Qcow2Error;
pub use virt_what::VirtInfo;
pub use virt_what::get_virt_what;
pub use virtiofsd::VirtiofsdConfig;
pub use virtiofsd::VirtiofsdDaemon;
pub use virtiofsd::VirtiofsdError;
pub use virtiofsd::get_virtiofsd_version;
pub use virtiofsd::is_virtiofsd_available;
pub use virtiofsd::start_daemon;
pub use virtiofsd::start_daemon_async;

Modules§

buildah
Buildah: Container Image Building
cloudhv
Cloud Hypervisor Service Abstraction Layer (SAL)
nerdctl
Nerdctl: Container Lifecycle Management
os
Operating system utilities and abstractions.
process
SAL Process Package
qcow2
QCOW2 Disk Image Management
rhai
Rhai integration for the virt package
virt_what
virtiofsd
Virtiofsd: High-performance directory sharing for virtual machines