Multipass is a lightweight VM manager for Linux, Windows and macOS. It's designed for developers who want to spin up a fresh Ubuntu environment with a single command. It uses KVM on Linux, Hyper-V on Windows and QEMU on macOS to run virtual machines with minimal overhead. It can also use VirtualBox on Windows and macOS. Multipass will fetch Ubuntu images for you and keep them up to date.
Since it supports metadata for cloud-init, you can simulate a small cloud deployment on your laptop or workstation.
| Service | Status |
|---|---|
| CI | |
| Snap | |
| Codecov |
For more information, see How to install Multipass.
Multipass is available as a snap:
sudo snap install multipass
Download the installer from GitHub.
Alternatively, you can use Homebrew which is not officially supported, as it is not maintained by the Multipass team, but by the community. Multipass is available as a cask:
brew install --cask multipass
Please note that you may be required to enter your password for some sudo operations during installation. You may also need to disable the firewall to launch a multipass instance successfully on macOS.
Download the installer from GitHub.
Here are some pointers to get started with Multipass.
For a more comprehensive learning experience, please check out the Multipass Tutorial and consult the Multipass documentation.
Please follow the platform-specific build instructions in the files below:
- BUILD.linux.md for Linux
- BUILD.macOS.md for macOS
- BUILD.windows.md for Windows
You may use your preferred package manager to install Multipass. Note that only the official installers are supported. See the installation guide for details.
For backend support and system requirements, refer to the Multipass driver documentation.
If you notice outdated information or inconsistencies in these files, please open an issue or, even better, submit a pull request!
You can also reference our GitHub Actions CI to see how Multipass is built and tested across platforms.
Requires (>= CMake 3.29)
To accelerate the build, the build system will attempt to locate and utilize mold or lld (respectively) in place of
the default linker of the toolchain. To override, set
CMAKE_LINKER_TYPE at CMake
configure step.
The Multipass team appreciates contributions to the project, through pull requests, issues, or discussions. Changes to this project should be proposed as pull requests. Proposed changes will then go through review and once approved, be merged into the main branch.
Before contributing, please read the Contributing document carefully and follow the Contributing Guidelines.
The code in this repository is licensed under GNU General Public License v3.0. See LICENSE for more information.
