22:40, 09 ноября 2024

Релиз Lima 1.0 — инструментария для запуска виртуальных машин с Linux

Представлен релиз открытого проекта Lima 1.0. Это универсальный инструментарий для запуска виртуальных машин с Linux в различных операционных системах, который изначально развивал похожую на WSL2 прослойку для запуска Linux-приложений в macOS .

Читать на сайте

По информации OpenNET, ключевой целью решения Lima является предоставление простого способа запуска произвольных Linux-дистрибутивов в изолированных контейнерах или виртуальных окружениях, обеспечивая при этом автоматическое перенаправление сетевых портов и совместный доступ к файлам. Код проекта написан на языке программирования Go и опубликован на GitHub под лицензией Apache 2.0.

Для изолированного запуска Linux-окружения в Linux и BSD-системах в Lima может использоваться runtime containerd и различные движки контейнерной изоляции (Apptainer, Docker, Podman, LXD). В macOS применяется QEMU с ускорителем HVF или непосредственно штатный для macOS инструментарий виртуализации Virtualization.framework. Для запуска Linux-окружений в Windows используется прослойка WSL2 (Windows Subsystem for Linux). Поддерживается запуск Linux-дистрибутивов, собранных для архитектуры x86_64 на хост-системах c архитектурой ARM64 и наоборот. В экспериментальном режиме имеется поддержки архитектур riscv64 и ARM32.

Для организации доступа к файлам хост-окружения в Lima могут использоваться SSHFS, virtio-9p-pci/virtfs (по умолчанию) и virtiofs. Перенаправление сетевых портов осуществляется через отслеживание сетевых обращений через /proc/net/tcp и iptables с последующим автоматическим запуском "ssh" с опцией "-L". В качестве экспериментальных возможностей доступен проброс доступа к звуковой системе ALSA и организация удалённого подключения через VNC.

Для быстрого развёртывания окружений в Lima предоставляются шаблоны, подготовленные для различных версий дистрибутивов AlmaLinux, Alpine, Arch Linux, Debian, Fedora, Gentoo, openSUSE, Oracle Linux, Rocky и Ubuntu. Для сборки собственных системных образов предлагается использовать инструментарий BuildKit. Возможность использования Lima для запуска Linux-окружений интегрирована в инструментарии Finch (Amazon), Rancher Desktop (SUSE), Colima и Podman Desktop (Red Hat). Отдельно развивается собственный графический интерфейс пользователя Lima GUI, написанный с использованием Qt.

Версия Lima 1.0 отмечена как первый стабильный релиз проекта, подведший итоги трёх лет разработки и включающий некоторые накопившиеся изменения, нарушающие обратную совместимость.

Основные изменения и доработки в Lima 1.0:

Обсудить