lima-vm

    lima-vm/lima

    #141 this week

    Linux virtual machines, with a focus on running containers

    ios
    containerd
    lima-vm
    macos
    qemu
    vm
    Go
    Apache-2.0
    21.6K stars
    931 forks
    21.6K GitHub watchers
    Updated 7/24/2026
    View on GitHub

    Backblaze Generative Media Hackathon

    Build the next generation of AI media apps with Genblaze, stored on Backblaze B2. $10,000 in prizes.

    Enter the hackathon

    Loading star history...

    Use Cases & Benefits

    • Launches Linux virtual machines with automatic file sharing and port forwarding to run containers and Linux workloads on macOS and other hosts.
    • Enables seamless containerd and Docker usage on macOS with minimal setup, bridging native Linux container environments to non-Linux systems.
    • Use for running containerd-based container workloads on macOS without native Linux support.
    • Use for developing and testing Kubernetes clusters locally on macOS using lightweight VMs.
    • Use for running non-container Linux applications on macOS or other supported hosts with easy VM management.

    About lima

    [🌎Web site] [📖Documentation] [👤Slack (#lima)]

    Shows a stylized 'Lima' text in bold, modern font

    Lima: Linux Machines

    Ask DeepWiki OpenSSF Best Practices OpenSSF Scorecard

    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):

    brew install lima
    limactl start
    

    To run Linux commands:

    lima uname -a
    

    To run containers with containerd:

    lima nerdctl run --rm hello-world
    

    To run containers with Docker:

    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:

    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

    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.

    Discover Repositories

    Search across tracked repositories by name or description