LimaVM Is Probably The Best MacOS Virtual Machine I've Ever Used


LimaVM Is Probably The Best MacOS Virtual Machine I've Ever Used

If you're tired of Docker Desktop bogging down your machine, or simply don't like fuff of mapping ports, mounting volumes when all you need is a small virtual environment, this one's for you.

I recently discovered LimaVM, and it's a game-changer for local development.

It lets you spin up Linux VMs with ease, offering a faster, lighter alternative to Docker and other VM managers for many tasks, but especially for development.

What's the big problem?

Let's face it: containers can be a resource hog, even when they're not, the hypervisor can start eating resources like it's a memory cookie monster.
Remember that feeling when you're trying to quickly test an application, but you mess up the port mapping, then mount the wrong path and env vars, then it takes forever to start, eats up your CPU, and drains your battery?

I've been there, struggling with permissions, and a sluggish shared file system.

It's a frustrating experience that eats into valuable development time, and this builds over over time.

How do most people solve it?

Many developers default to Docker, or even expensive cloud-based VMs, to create the Linux environments they need for building, testing, and running software.

While these solutions work, they often come with significant overhead, not to mention the cost of holding unnecessary resources in the cloud.

Docker Desktop or its alternatives, while convenient, can be too heavy for simple development tasks, especially on older or less powerful machines.

Cloud VMs add complexity and cost, not to mention the risk of not wiring things up correctly, leaving your previous code and secrets exposed (which in turns require another setup of proper tunneling, permissions management, and... you get the point).

Local development can be done right, but it doesn't have to be a pain

Enter LimaVM.

It provides a best-of-all-worlds way to run Linux VMs on MacOS (but not only macs), with minimal overhead.

It handles networking, file sharing, and port mapping automatically, so you can access your web app, and local files to work on without even mentioning it:

Lima assumes you need them by default.

It's fully compatible with container runtimes like containerd (which it was initially built to promote!). It's designed for developers, offering a simple CLI that gets out of your way.

Putting LimaVM into Action

Getting started with LimaVM is straightforward. If you are on MacOS, you can install Lima with brew:

brew install lima

Then, simply run:

lima start

Lima will set up a default Ubuntu VM geared for Docker. You can then access it using:

lima shell

This will drop you into a shell within the VM, with your local file system mounted and ready to go.

From there, you can install dependencies, run your code, and test your applications.

You can even run containers using Nerdctl (if you're crazy enough to do so 😅)

Why This Matters

LimaVM offers a compelling alternative to Docker, or any other form of virtualization for local development. It's faster, lighter, and easier to use.

Whether you're building containerized applications or just need a Linux environment for testing, LimaVM can significantly improve your workflow.

"Lima has a developer first mindset it doesn't force you into guies or complex configs there's a simple CLI that gets out of your way when all you need is work"


Exploring Further

LimaVM is highly customizable.

You can explore different templates for various Linux distributions and container engines.

Check out the official documentation at https://limavm.io for more information.


Thank you for reading.
Feel free to reply directly with any question or feedback.
Have a great weekend!

ESPRESSO FRIDAYS

Every once in a while I send hand picked things I've learned. Kind of like your filter to the tech internet. No spam, I promise!

Read more from ESPRESSO FRIDAYS

You’ve been parsing JSON wrong your whole life This issue is brought to you by: Secure Your AI Future at DevSecCon 2025 Software development is undergoing a seismic shift as AI transforms how we build, deploy, and secure applications. Register for the 1st-ever Global Community Summit on AI Security, covering critical strategies to empower AI innovation without compromising security. Register for DevSecCon 2025 (It’s Free!) Ever opened a massive “.log” file and realized it’s just one long,...

Wait… cURL can do WHAT?! Brought to you in collaboration with 1Password and Browserbase: 🔐 Your AI Agents Can Finally Log In! 1Password and Browserbase just partnered to solve AI’s biggest security nightmare: authentication without exposing credentials. Introducing 1Password’s Secure Agentic Autofill, allowing you to connect your 1Password Enterprise Password Manager to your browser automation agent powered by Browserbase. Build AI agents that can actually work without compromising security....

Postgres is not a database. For years, we’ve been taught to see Postgres as the reliable, open source workhorse for storing our data. Everyone called it "The Toyota of databases", you know... it just works. But to leave it at that is to miss the whole story.Postgres isn’t just a place to put your data, it’s a powerful development platform that can become the core of your entire backend, an operating system (yea, bold) for your application’s stack. Diving deep into its capabilities I learned...