lima Documentation

Linux virtual machines, with a focus on running containers

21,671 stars Go Go 1 file ยท ~2,984 tokens #containerd#lima-vm#macos#qemu#vm
RAW Doc

File: README.md

[๐ŸŒŽWeb site]
[๐Ÿ“–Documentation]
[๐Ÿ‘คSlack (#lima)]

Lima: Linux Machines



Lima launches Linux virtual machines with automatic file sharing and port forwarding (similar to WSL2).

The original goal of Lima was to promote containerd including nerdctl (contaiNERD ctl)
to Mac users, but Lima can be used for non-container applications as well.

Lima also supports other container engines (Docker, Podman, Kubernetes, etc.) and non-macOS hosts (Linux, NetBSD, etc.).

Getting started

Set up (Homebrew):

bash
brew install lima
limactl start

To run Linux commands:

bash
lima uname -a

To run containers with containerd:

bash
lima nerdctl run --rm hello-world

To run containers with Docker:

bash
limactl start template:docker
export DOCKER_HOST=$(limactl list docker --format 'unix://{{.Dir}}/sock/docker.sock')
docker run --rm hello-world

To run containers with Kubernetes:

bash
limactl start template:k8s
export KUBECONFIG=$(limactl list k8s --format 'unix://{{.Dir}}/copied-from-guest/kubeconfig.yaml')
kubectl apply -f ...

See https://lima-vm.io/docs/ for the further information.

Contributing

We welcome contributions! Please see our Contributing Guide for details on:

  • Developer Certificate of Origin (DCO): All commits must be signed off with git commit -s
  • Code licensing and pull request guidelines
  • Testing requirements

Community

Adopters

Container environments:

  • Rancher Desktop: Kubernetes and container management to the desktop
  • Colima: Docker (and Kubernetes) on macOS with minimal setup
  • Finch: Finch is a command line client for local container development
  • Podman Desktop: Podman Desktop GUI has a plug-in for Lima virtual machines

GUI:

Communication channels

Social media accounts

Follow us for project updates, release announcements, and community news:

Code of Conduct

Lima follows the CNCF Code of Conduct.


We are a Cloud Native Computing Foundation incubating project.

The Linux Foundationยฎ (TLF) has registered trademarks and uses trademarks. For a list of TLF trademarks, see Trademark Usage.


File: templates/README.md

Quick usage

To create and start a new instance from the template fedora:

bash
# Note: In Lima 1.x, template URLs included leading slashes, e.g. `template://fedora`.
limactl create template:fedora
limactl start fedora

or

bash
limactl start template:fedora
# For the second time onward, just run `limactl start fedora`

To open a shell:

bash
limactl shell fedora

or

bash
export LIMA_INSTANCE=fedora
lima

Template list

โญ = "Tier 1"

โ˜† = "Tier 2"

Default

  • default (โญUbuntu, with containerd/nerdctl)

Linux distributions

Non-Linux

NOTE: support for non-Linux OSes is experimental.

Alternative package managers

Containers

Container engines

Container image builders

Container orchestration

AI agents

See https://lima-vm.io/docs/examples/ai/.

Optional feature enablers

Lost+found

Details

Tier

  • "Tier 1" (marked with โญ): Good stability. Regularly tested on the CI.
  • "Tier 2" (marked with โ˜†): Moderate stability. Regularly tested on the CI.

Other templates are tested only occasionally and manually.