LINUX.ORG.RU

Apple представила поддержку Linux-контейнеров в macOS через собственную виртуализацию

 , ,

Apple представила поддержку Linux-контейнеров в macOS через собственную виртуализацию

1

3

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

В состав решения входят два Swift-пакета с открытым исходным кодом под лицензией Apache 2.0:

  • Containerization — низкоуровневый API для работы с OCI-совместимыми образами, загрузки их из внешних репозиториев, создания файловой системы Ext4, настройки виртуальных сетей через vmnet, сборки минималистичных ядер Linux и запуска виртуальных машин с контейнерами. API взаимодействует с гостевой системой через gRPC over vsock.

  • Container — высокоуровневая надстройка, предоставляющая интерфейс в стиле Docker для управления жизненным циклом контейнеров (создание, запуск, остановка). Интеграция с launchd обеспечивает системное управление службами.

Поддержка контейнеров реализована в macOS 15, но рекомендована для использования в macOS 15.6 Beta 1. Только в этой версии полностью функционирует сетевая изоляция, включая привязку IP к отдельным контейнерам. Инструментарий совместим с Apple Silicon (M1–M4); поддержка Intel-архитектуры отсутствует. Для запуска x86_64-контейнеров используется Rosetta 2.

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

★★★★

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

Читал эту новость пару дней назад и это круто. Главное что именно поддержка линукс контейнеров а не своих родных.

mx__ ★★★★★
()

Иньекция Linux на всех ОС прошла успешно, осталось незаметно подменить всё остальное :)

LINUX-ORG-RU ★★★★★
()

А как на MacOS в принципе обстоят дела с легковесной (без требований к железу) виртуализацией/контейнеризацией?

MirandaUser2
()

Apple анонсировала инструменты для запуска Linux-контейнеров в macOS с использованием виртуальных машин на базе собственного фреймворка Virtualization.framework.

Это типа WSL?

Kolins ★★★★★
()

два Swift-пакета

Кстати: https://www.swift.org/blog/introducing-swiftly_10/.

Today we’re delighted to introduce the first stable release of swiftly, a Swift version manager that takes the pain out of installing, managing and updating your Swift toolchain.

Что-то типа rustup. :)

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

Берёшь runc делаешь нашлёпку сверху, вот тебе свой личный докер, все так и делают. Разница между всеми «контейнерами» только в ключах параметров запуска. Так что всё сводится к тому у кого нашлёпка лучше.

LINUX-ORG-RU ★★★★★
()

А в чем смысл? Там давно работает podman, как раз через этот самый virtualization framework

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

подман это просто нашлёпка, они сделали свою нашлёпку, все всегда делают свои нашлёпки, ибо контроль разработки важна в отношении интеграционных перспектив.

LINUX-ORG-RU ★★★★★
()
Последнее исправление: LINUX-ORG-RU (всего исправлений: 1)
Ответ на: комментарий от MirandaUser2

Никак, только через VM. Если докер-образ собран под aarch64, то производительность будет нормальная. Если под amd64 - то примерно как у какого-нибудь хасвелла

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

А как на MacOS в принципе обстоят дела с легковесной (без требований к железу) виртуализацией/контейнеризацией?

Ну про контейнеры ты только что прочитал и это круто (я не стал пилить новость тут, потому как на всем известном желто-сером сайте она уже была). А про виртуализацию… Ну - она есть. И parallels и vm fusion.

Но про виртуализацию, в разрезе x86-64 надо понимать, что это будет не то чтоб сильно быстро, архитектуры хостов-то сильно разные.

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

А что с поддержкой k8s?

А, эээ, зачем? Ты сам-то видишь хоть какой-то в этом великий смысл? Ну кроме извращений, вроде запуска локального кластера на локалхост для непонятно чего? А собирать полноценный на маках… ну на мой взгляд - нерентабельное занятие.

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

Ну кроме извращений, вроде запуска локального кластера на локалхост для непонятно чего?

Ну может какому разработчику будет проще отлаживать/разрабатывать запустив у себя копию проекта k8s

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

Ну может какому разработчику будет проще отлаживать/разрабатывать запустив у себя копию проекта k8s

Разве что дома свой. В других местах - получит по рукам. Не разработчика уровень, чтоб решать что как и где отлаживать. Лично мне в голову не приходила идея запускать локальный кластер кубера. Потому как есть тестовые. Такое даже дома собрать не накладно финансово. В плане для тестов чего-то там. Или для небольшого домашнего сервера. Мак для этого - не лучшая идея.

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

Нет, типа докера. WSL в макоси не нужен, там и так весь unix инструментарий нативно работает.

Да? а зачем же там ядро Linux?

Контейнеры запускаются в изолированной среде с ядром Linux

MirandaUser2
()
Ответ на: комментарий от Logopeft

Имелась в виду реализация. Что реализация у этого эппловского поделия такая же, как у WSL (легковесная виртуалка).

Еще интересно - там стандартное ядро Линукса, или специальное, как у WSL.

bigbit ★★★★★
()

Запуск AMD64 было бы интересно

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

Да? а зачем же там ядро Linux?

В макос НИКОГДА не было «ядра линукс». Ядро макос- это дарвин, уши которого торчат из bsd

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

и как linux софт будет работать на ядре от macos?

разницу между словами unix инструментарий и «linux софт» - понимаете ? Никак линуксовые программы напрямую там не будут работать.

DrRulez ★★★★★
()

Ненужная поделка.

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

и как linux софт будет работать на ядре от macos?

после перекомпиляции под макось, очевидно. Чтобы осознать масштаб проблемы: по данным аналитики за последний месяц из homebrew было установлено 13500 разных пакетов. Размер репозиториев archlinux - 15200 пакетов (вместе с {core,extra}-testing)

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

Работал в одной конторе где деньги экономили как могли, прод крутился на AWS, а разрабы все локально тестировали, но там по k8s не дошло, использовали docker-compose.

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

деньги экономили как могли

прод крутился на AWS

как говорится в таких случаях, хонк-хонк

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

после перекомпиляции под макос

окей, а зачем тогда Virtualization.framework ?
Ну и тот-же docker как там будет без namespaces работать?

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

прод крутился на AWS

Бывало такое. Не раз видел. И постоянно говорил людям про риски. Мне крутили пальцем у виска. Потом часть народа пришло, как клиенты, после известных событий. Кому-то помогли перетащить к себе, кому-то помогли организовать оплату сервисов.

там по k8s не дошло, использовали docker-compose.

Моща аще! :) деньги на авс находили, а на тестовый контур нет :)

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

В других местах - получит по рукам. Не разработчика уровень, чтоб решать что как и где отлаживать.

Иногда как раз по работе требуется запускать локальный кластер (и это приветствуется работодателем, с локальными тестовыми кредами, с локальной тестовой БД и прочим). Для отладки и тестирования изменений очень удобно.

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

Иногда как раз по работе требуется запускать локальный кластер (и это приветствуется работодателем, с локальными тестовыми кредами, с локальной тестовой БД и прочим). Для отладки и тестирования изменений очень удобно.

Для этого создается тестовый контур. И, в том числе, документируются и фиксируются изменения. В противном случае это вот все, разбросанное по рабочим машинам разработчиков, ведет к зоопарку и бардаку. Я сам так (давно) наступил на такие грабли и больше уже такого не допускаю. Чревато весьма может оказаться. Поэтому где бы я потом не работал и уже н-лет как у себя у меня везде был, есть и будет тестовый контур. Это может оказаться сильно дешевле, по итогу. На мой взгляд, такая штука - обязательный элемент любой ИС наряду с резервным копированием.

DrRulez ★★★★★
()

Как всегда у Эппла, последние впрыгнули в вагон, но сделали из этого инновацию :))

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

Как всегда у Эппла, последние впрыгнули в вагон, но сделали из этого инновацию :))

Кстати да. Как Джобс умер это у них все чаще.

DrRulez ★★★★★
()

Контейнеризация, через виртуализацию. Они просто виртуалки крутят, но для девпупсов сделали команды как в докере, чтобы те не испугались?

mamina_radost
()
Ответ на: комментарий от mamina_radost

Они просто виртуалки крутят, но для девпупсов сделали команды как в докере, чтобы те не испугались?

По сути да.

DrRulez ★★★★★
()

охренеть 1:

поддержка Intel-архитектуры отсутствует

охренеть 2:

Для запуска x86_64-контейнеров используется Rosetta 2

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

Ну тут имеется в виду, что на старых маках с интел архитектурой это работать не будет. Что логично, в виду сворачивания поддержки вообще.

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

деньги на авс находили

Это был отдельный прикол. aws раз в месяц выставляет счет за то что ты использовал и надо было расписать все до цента, за какой сервис для каких целей и т.д.

после известных событий.

Я до этих событий успел уйти, но журил их за то что github и google docs активно использовали под соусом «если с ними что-то случится, то это будет мировая проблема», в итоге поднимали локальный gitea или gitlab, на что заменили gdocs не знаю. Еще у них все деловое общение было в Skype...

Kolins ★★★★★
()

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

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

Это хорошая новость. Значит софт надо писать только для Linux и он будет работать везде где нужно

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

Это хорошая новость. Значит софт надо писать только для Linux и он будет работать везде где нужно

С одной стороны, да. С другой, аналогично WSL, побуждают отказаться от установки Linux на железо. Выглядит как очередное EEE.

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

В других местах - получит по рукам. Не разработчика уровень, чтоб решать что как и где отлаживать.

У вас прям какое-то мрачное место :) у нас девопсы поставляют kind как раз для локальной разработки. Зачем два раза описывать окружение для локального дева и тестового, если можно один раз через хельм.

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

Не хлебом серверами едиными.

Много пользователей стимдеков или роутеров, на которых до этого стояли openwrt, перешли на windows?

mamina_radost
()
Ответ на: комментарий от mamina_radost

Много пользователей стимдеков или роутеров

Не делайте вид, что не понимаете. Цель здесь — рабочие станции. Пока они.

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

Цель здесь — рабочие станции.

Я правильно понимаю, что вы считаете, что единственное препятсвие к доминированию на рабочих станциях линукса, который существует уже 35 лет, это внедрение wsl в windows?

mamina_radost
()
Ответ на: комментарий от DrRulez

я об этом и говорю!
а теперь, господа, все выстраиваемся в очередь за новыми «железками» (а «мы» для «этого» будем делать все возможное) :о)

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

Я правильно понимаю

Предполагаю, что понимаете правильно, но продолжаете дурачиться.

единственное препятсвие

Нигде этого не говорил. Спорите ради спора. Не интересно.

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

Для этого создается тестовый контур. И, в том числе, документируются и фиксируются изменения. В противном случае это вот все, разбросанное по рабочим машинам разработчиков, ведет к зоопарку и бардаку.

Некоторое количество тестовых контуров тоже есть. Но их не всегда хватает, т.к. различные разработчики хотят тестировать изменения в одних и тех же деплойментах. А локальные кластера вполне себе документируются, имеют хорошее сопровождение и унифицированно запускаются скриптами, которые лежат рядом с кодом.

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