Представлен релиз открытого проекта Lima 1.0. Это универсальный инструментарий (сборки доступны для macOS, Linux, Windows и BSD-систем) для запуска виртуальных машин с Linux в различных операционных системах, который изначально развивал похожую на WSL2 (Windows Subsystem for Linux) прослойку для запуска Linux-приложений в macOS (LInux-on-Mac).
По информации 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:
стабилизирована поддержка драйвера vz, использующего систему виртуализации Virtualization.framework на платформе macOS;
на системах начиная с macOS 13.5 драйвер vz теперь используется по умолчанию;
в разряд стабильных также переведены драйвер 9p для организации совместного доступа к файлам и драйвер user-v2 для организации сетевого доступа;
добавлена поддержка проброса UDP-портов;
обновлены многие шаблоны установки дистрибутивов, например, добавлены шаблоны для Fedora 41 и Ubuntu 24.10.
Источник: habr.com