LINUX.ORG.RU

Apple представила Apple Container 1.0, программу, позволяющую запускать Linux-контейнеры прямо на macOS

 , ,

Apple представила Apple Container 1.0, программу, позволяющую запускать Linux-контейнеры прямо на macOS

1

2

Проект стал развитием ранее открытого решения, которое компания показала около года назад как альтернативу классическим контейнерным платформам вроде Docker. По сути, это CLI-утилита, с помощью которой можно создавать, запускать и публиковать OCI-совместимые контейнеры, с интеграцией в macOS и собственным способом их запуска.

Так как macOS не поддерживает Linux-контейнеры напрямую, Apple использовала подход с легкими виртуальными машинами. Каждый контейнер запускается внутри изолированного Linux-окружения, фактически получая собственную микросистему. Это чем-то напоминает WSL от Microsoft.

В отличие от классических контейнеров, которые обычно рассчитаны на один процесс, здесь речь идет о более полном окружении. Такое Linux-пространство может работать долго, запускать фоновые сервисы и сохранять состояние между сессиями — почти как полноценная система внутри macOS.

Одна из ключевых фишек — максимально тесная связка с системой. Домашняя папка macOS автоматически доступна внутри Linux-окружения. Поэтому код, репозитории и настройки можно использовать одновременно в обеих средах.

Все это позволяет писать код в привычном редакторе на macOS и при этом собирать и запускать его в Linux без лишних переключений.

Также поддерживаются разные дистрибутивы — от Ubuntu и Debian до Alpine, причем каждое окружение можно настроить отдельно.

Apple добавила управление контейнерными «машинами»: их можно создавать, запускать, останавливать, настраивать ресурсы и выбирать поведение файловой системы. Есть даже поддержка более продвинутых сценариев вроде фоновых сервисов внутри Linux-окружения.

Единственное ограничение для получения подобной функциональности: для расширенных сценариев с вложенной виртуализацией требуется Mac на процессоре M3 и новее, а также macOS 15 и специальное ядро с поддержкой KVM. (Автор новости это не тестировал и не может с достоверностью прокомментировать и ответить подробно, что они имеют в виду).

Несмотря на появление нового инструмента, он не заменяет Docker Desktop. У Docker по-прежнему сильнее экосистема, привычные инструменты разработки, GUI и широкая поддержка рабочих процессов.

Apple Container 1.0 это скорее попытка предложить более «родной» способ работы с Linux-средой на Mac — ближе к системе, но пока не как универсальная замена привычным контейнерным платформам.

>>> Подробности

★★★★★

Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 3)

Домашняя папка macOS автоматически доступна внутри Linux-окружения.

Удобно-то как!

MoldAndLimeHoney ★★★
()

Работа с чужой системой, используя инструменты своей системы – это хорошо. Повышается однородность представление неоднородных систем.

Именно это делает системы распределёнными.

kaldeon ★★
()
Ответ на: комментарий от mittorn

Поинт в том, что всл1-стайл ничего хорошего не даёт:

  1. Эмулятор ядра в виде драйвера — сложен в реализации.
  2. Работает медленнее.
  3. Может уронить ведро хостовой системы.

От этих бед спасает использование настоящего ядра с аппаратной виртуализацией…

Set440 ★★
()

Ну и чем это лучше podman, который там 100 лет как работает по ровно той же схеме с виртуалками? NIH-синдромом у гнилого яблока?

В отличие от классических контейнеров, которые обычно рассчитаны на один процесс

эту чушь ты надеюсь не сам придумал?)) Ничего не мешает запускать сколько угодно процессов в одном контейнере, просто там нужен супервизор типа s6-overlay, который будет их прибивать по сигналу.

Lrrr ★★★★★
()
Последнее исправление: Lrrr (всего исправлений: 1)
Ответ на: комментарий от steemandlinux

ну если так хочется, то можно и на линуксе виртуалки подманом гонять. Там он вроде через qemu работает.

Lrrr ★★★★★
()
Ответ на: комментарий от mittorn

Сделали бы аналог wsl1 или линуксулятора, но здесь не оно…

Зачем? большинство линуксового софта, который может быть интересен, и так под макосью работает практически идентично.

Для разработки удобнее именно нормальный линукс в виртуалке/контейнере иметь, потому что разворачиваться он будет под линуксом, а не под какимто мутным слоем совместимости.

mono ★★★★★
()
Ответ на: комментарий от rukez

Только для сценариев с вложненной виртуализацией, если следовать тексту новости.

mono ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.