# Multipass — Instant Ubuntu VMs on Any Desktop > Multipass by Canonical launches Ubuntu virtual machines in seconds on macOS, Windows, and Linux, providing lightweight cloud-style development environments locally. ## Install Save in your project root: # Multipass — Instant Ubuntu VMs on Any Desktop ## Quick Use ```bash # Install on macOS brew install --cask multipass # Launch an Ubuntu VM multipass launch --name dev --cpus 2 --memory 4G --disk 20G # Open a shell multipass shell dev ``` ## Introduction Multipass is a lightweight VM manager by Canonical that lets you spin up Ubuntu instances in seconds on macOS, Windows, or Linux. It provides a cloud-init compatible workflow, making it easy to create reproducible development and testing environments without the overhead of full hypervisor management. ## What Multipass Does - Launches Ubuntu VMs in under 30 seconds with a single command - Supports cloud-init for automated provisioning on first boot - Manages VM lifecycle (start, stop, delete, snapshot) through a simple CLI - Mounts host directories into guest VMs for seamless file sharing - Uses native hypervisors (HyperKit/QEMU on macOS, Hyper-V on Windows, KVM on Linux) ## Architecture Overview Multipass runs a local daemon that manages VM lifecycle through the host's native hypervisor. On macOS it uses QEMU or HyperKit, on Windows it uses Hyper-V or VirtualBox, and on Linux it uses QEMU/KVM or LXD. The CLI communicates with the daemon over a local gRPC socket. Each VM boots from an official Ubuntu cloud image with cloud-init applied. ## Self-Hosting & Configuration - Install via `brew install --cask multipass` on macOS, Chocolatey on Windows, or snap on Linux - Set the default hypervisor with `multipass set local.driver=qemu` (or `hyperkit`, `hyperv`) - Pass cloud-init YAML with `multipass launch --cloud-init config.yaml` - Mount host directories with `multipass mount ~/projects dev:/home/ubuntu/projects` - Configure default CPU, memory, and disk with `multipass set local.default-*` keys ## Key Features - Sub-minute VM launch times using pre-built Ubuntu cloud images - Full cloud-init support for reproducible provisioning scripts - Native hypervisor integration for near-bare-metal performance - Host directory mounts for seamless development workflows - Snapshot and restore for quick environment rollbacks ## Comparison with Similar Tools - **Lima** — Linux VMs on macOS with containerd focus; Multipass is Ubuntu-specific with tighter Canonical integration - **Vagrant** — multi-provider VM management with Vagrantfiles; Multipass is simpler and faster for Ubuntu-only workflows - **Docker Desktop** — container-based environments; Multipass provides full VMs when containers are not sufficient - **UTM** — macOS VM app with GUI; Multipass is CLI-first and optimized for automated provisioning - **WSL 2** — Windows-only Linux layer; Multipass runs full VMs across all three major operating systems ## FAQ **Q: Which Ubuntu versions does Multipass support?** A: Multipass supports all current Ubuntu LTS releases and the latest interim release. Use `multipass find` to list available images. **Q: Can I run non-Ubuntu images?** A: Multipass is designed for Ubuntu images. For other distributions, consider Lima or Vagrant. **Q: How does Multipass compare to running Docker containers?** A: Multipass provides full virtual machines with their own kernel, suitable for testing kernel modules, systemd services, or workloads that need a complete OS. **Q: Does Multipass support ARM architectures?** A: Yes. On Apple Silicon Macs, Multipass runs ARM64 Ubuntu images natively through QEMU or the Virtualization framework. ## Sources - https://github.com/canonical/multipass - https://multipass.run/docs --- Source: https://tokrepo.com/en/workflows/35facbfd-414b-11f1-9bc6-00163e2b0d79 Author: AI Open Source