Want to spin up Ubuntu VMs from Windows 10's command line, eh? We'll need to see a Multipass
Don't need full-fat GUI? WSL doesn't cut it? Canonical has just the ticket
Windows 10 developers have been gifted yet another way of running Linux on their desktop in the form of Canonical's Multipass.
Users of Microsoft's OS have been spoiled for choice as the software maker has sought to persuade developers that these days it prefers to snuggle up to rather than stomp on penguin-based life.
Windows 10 Hyper-V has allowed developers to spin up Linux Virtual Machines with little effort, and last September Canonical became a fully paid-up member of the Hyper-V club, with an Enhanced Session Mode-enabled (ESM) version of Ubuntu allowing clipboard and file sharing between Ubuntu's desktop and Windows.
A GUI is all well and good, but the command line is where the magic happens and, again, Microsoft has an answer in Windows 10 in the form of the Windows Subsystem for Linux (WSL). Fire up WSL for your distro of choice and hey presto! Here's Bash, ready to play.
However, WSL has some hulking limitations of its own, being more a compatibility layer and lacking a Linux Kernel.
Enter Multipass, which today made its way out of private beta.
Multipass, at its core, is a service to manage Linux (in this case, Ubuntu) virtual machines in Windows 10 without the overhead of faffing about with Hyper-V (although Hyper-V is most definitely required to make the thing work).
Accessible from the command line (in our testing we used PowerShell, but the Windows 10 command shell worked just as well), Multipass provides a command line interface to launch, manage and generally fiddle about with instances of Linux (only 16.04 and 18.04 LTS Ubuntu). The downloading of a minty-fresh image takes a matter of seconds, and within minutes a VM can be up and running.
Once launched, a PowerShell user can fire off commands at the VM from the PS command line or drop into the shell of the VM itself. The functionality provides some intriguing options for those into PowerShell scripting.
Automation fiends will also be pleased to note that while launching a Multipass VM allows a user to specify CPU, disk and memory from the command line, a
–cloud-init option permits YAML-jockeys to provision VMs just as if they were flinging the things at the cloud.
Certainly, for developers, the ability to quickly spin up VMs in this way on a desktop without having to head cloudwards makes for some intriguing possibilities.
David Chalmers, a product manager at Canonical, told The Register that Multipass was aimed squarely at developers in a corporate environment. Coding in that space, Chalmers observed, "you have a bit of a challenge on your hands".
He went on to highlight the problem in Windows 10. "Either going for a command line experience that doesn't have a full kernel and everything in it, or sort of have a virtualized GUI experience, that forces you into this completely different environment."
Neither work particularly well for developers trying to create apps designed for cloudier parts.
Hence Multipass, with its full-fat kernel, chock full of command line goodness. If you want that GUI, Canonical will be very happy for you to download the Hyper-V ESM image instead.
Mac and Linux users have been enjoying Multipass for a while now. Canonical plans that the public beta for Windows 10 unveiled today will get a full release later in 2019. ®