28 comments

[ 1.1 ms ] story [ 66.7 ms ] thread
Interesting.... I'm on Windows with WSL2 for most of my technical work. This looks the underlying technology is going to be pretty similar, except that I get something of a management console for multiple instances.

Now I also use applications with WSLg, so I wonder how far Multipass really goes or if its just for spinning up headless server like instances.

(comment deleted)
My experience with WSl2 is not great so far. There seems to be some memory management process in Windows that starts eating enormous amounts of cpu cycles for long periods at inconvenient times. This does not happen when I run the same setup in a same distro on the same hardware and Windows installation under Hyper-V.
Is this process part of Windows or WSL? In my experience Windows itself (without WSL) loves eating my CPU at its earliest convenience, even waking up my (unplugged) laptop from sleep for a chance to do so... (see recent HN thread)
It is a windows process.

As for the waking up, there is a setting somewhere in power options that you can set to disallow programs to schedule machine starts (even when the PC is fully shut down). Sadly, Windows ships with allow wakeups by default.

Seems odd that the post mentions Docker and Virtualbox as alternatives, when it seems Vagrant would be the most similar comparison (and is more flexible than this, as it’s not constrained to Ubuntu hosts).
Multipass is better than vagrant in my opinion because it supports cloud-init which is the most portable and flexible way to bootstrap a server.

Multipass also supports any qcow2 machine image, both from filesystem or http that has cloud-init, not just Ubuntu. This is the case on Linux not sure if this is still a limitation on macOS.

Also it's a replacement for docker desktop because it can proxy command line aliases into the machines. So you can run docker inside multipass and have docker cli route there even if docker cli is not installed on host.

The problem with vagrant in apple silicone is VMware: it’s not 100% stable.

Multipass is way more stable and it works out of the box.

Is this like docker where one can run hundreds or like a full vm where one can run two or three? Mentions both in the article.
Believe under the hood it uses hyperv with the option to use virtualbox instead (at least for the Win version)
Depends how much RAM CPU and disk your host has. You specify those allocations per vm
Seems quite similar to LXC. Would be interested in seeing how the two compare.
LXC requires Linux. So you can actually use multipass to run LXC on macOS and Windows. I believe that was actually one of the main motivators for the multipass project.

It's also my theory that orbstack on macOS works like this

Using this at work. Not bad, but on my Windows11 amd64 machine has issues starting, losing its assigned ip and freezes mid execution of network tasks. Haven't discovered why yet, but there is not much love lost between us.
It is used for building snap packages since some years and it worked most times but was not fully stable yet. Few times I had issues where I needed to restart the multipass daemon or even the host system.
Over the past decade or so I used Vagrant for these things.

And Vagrant also integrates well for provisioning scripts.

Is there anything that I'm missing out if I stay with Vagrant?

I think it's a little simpler than Vagrant (iirc you can do everything from the command line versus a Vagrantfile)
I used to use vagrant and virtual box on apple. With silicone ones I switched to vmware, but the dev experience is far from good.

Qemu is what works best. Multipass is a nice wrapper around qemu.

If the thing is based on snap, it is a total no go for me.
Could you elaborate on that? How exactly snaps are a "no go"?
I also don’t understand the snap hate. They’re dependency-included packages.
Hell, I don't want to mess with it on my Ubuntu system, I remove it because it just feels dirty. It feels like it spreads its tentacles everywhere, it's opaque, and it's slow.
(comment deleted)