VM Management

  • crun-vm - 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.
  • kvmcli - tool for managing KVM (Kernel-based Virtual Machine) virtual machines. Inspired by Kubernetes’ kubectl, kvmcli provides a declarative way to create, delete, and manage VMs using YAML configuration files.
  • Lima VM - Lima launches Linux virtual machines with automatic file sharing and port forwarding (similar to WSL2).
  • Vagrant - Vagrant is the command line utility for managing the lifecycle of virtual machines. Isolate dependencies and their configuration within a single disposable and consistent environment.

OS Images

  • bootc - Transactional, in-place operating system updates using OCI/Docker container images. The project applies the "Docker container model using layers" for bootable host systems - using standard OCI/Docker containers as a transport and delivery format for base operating system updates.
  • d2vm - Build Virtual Machine Image from Dockerfile or Docker image
  • OSBuild - Image Builder - Building operating system artifacts.
  • Packer - tool that lets you create identical machine images for multiple platforms from a single source template. Packer can create golden images to use in image pipelines.

Unattended OS installation

  • cloud-init - industry standard multi-distribution method for cross-platform cloud instance initialization. It is supported across all major public cloud providers, provisioning systems for private cloud infrastructure, and bare-metal installations.
  • Kickstart - installation method used by Fedora, Red Hat Enterprise Linux and related distributions to automatically perform unattended OS installation and configuration.
  • subiquity - Subiquity is an installer framework for Ubuntu. It provides the Ubuntu Server with a text-based installation user interface and Ubuntu Core first-boot configuration. Subiquity is also the back end for the Ubuntu Desktop installer.

Virtual Networks

  • containerlab - CLI for orchestrating and managing container-based networking labs. It starts the containers, builds a virtual wiring between them to create lab topologies of users choice and manages labs lifecycle.
  • netlab - bringing infrastructure-as-code concepts to networking labs. You'll describe your high-level network topology and routing design in a YAML file, and the tools in this repository will ...

Containerized Development Environment

  • Coder - secure environments for developers and their agents.
  • DevPod - a tool used to create reproducible developer environments
  • Eclipse Che - run your favorite IDE on Kubernetes. Create a workspace from a Git repository or sample.
  • Kasm Workspaces - stream your workspace directly to your web browser on any device and from any location.
  • Lapdev - seamless dev environments for your Kubernetes apps.