Рубріки: Новини

Apple випустила інструменти для запуску Linux-контейнерів у macOS

Дмитро Сімагін

Компанія Apple представила нові інструменти для створення, завантаження та запуску Linux-контейнерів у macOS. Робота контейнерів у macOS забезпечується за допомогою полегшених віртуальних машин з ядром Linux, які запускаються за допомогою гіпервізора Virtualization.framework. Для роботи з Linux-контейнерами Apple пропонує використовувати два пакети: containerization і container. Обидва написані на Swift і мають безкоштовну ліцензію Apache 2.0.

Пакет containerization надає низькорівневий API для керування образами контейнерів у форматі OCI, завантаження контейнерів із зовнішніх репозиторіїв, створення кореневої файлової системи Ext4, забезпечення мережевої взаємодії, збирання варіантів ядра Linux, що швидко завантажуються, створення віртуальних машин і запуску в них окремих контейнерів. Контейнери можна зв’язувати з окремими IP-адресами. Для роботи віртуального мережевого стека, прив’язаного до кожного контейнера, задіяний фреймворк vmnet.

Завдяки застосуванню оптимізованої конфігурації ядра Linux і урізаного системного оточення з init-процесом vminitd на запуск віртуальної машини витрачається менше секунди. API дозволяє налаштовувати параметри робочого оточення та запускати поверх віртуальної машини контейнери з обраним змістом або окремими ізольованими процесами.

Пакет сontainer є надбудовою над API Containerization, що реалізує високорівневий інструментарій в стилі Docker для створення, завантаження, запуску та зупинки образів Linux-контейнерів у форматі OCI. Управління сервісами під час запуску контейнерів здійснюється за допомогою системного менеджера Launchd.

Інструментарій може використовуватися в macOS 15, але для повноцінної роботи та виключення проблем рекомендується використовувати версію macOS 26 Beta 1. Наприклад, у macOS 15 не працює пряма мережева взаємодія між контейнерами і обмежена прив’язка окремих IP до контейнерів. Можлива робота на ARM-системах Apple Silicon Mac (M1/M2/M3/M4), комп’ютери на базі процесорів Intel не підтримуються. Для запуску контейнерів, зібраних для архітектури x86_64, використовується транслятор процесорних інструкцій Rosetta 2.

 

Останні статті

В США відбулися перші змагання програмістів проти штучного інтелекту

У Сан-Франциско відбувся перший хакатон по кодингу, де змагалися програмісти та штучний інтелект. У заході…

12.09.2025

Microsoft нагадує про припинення підтримки мови VBScript у Windows

Компанія Microsoft нагадала про намір відмовитися від використання скриптової мови VBScript у Windows. Вперше про…

12.09.2025

Claude отримав функцію пам’яті, перенесення даних та анонімний чат

Компанія Anthropic анонсувала новий набір функцій для своєї платформи Claude. Одна з них дозволяє Claude…

12.09.2025

Редактор коду Visual Studio Code отримав автоматичний вибір LLM-моделі та нові функції безпеки

Microsoft оновила редактор коду Visual Studio Code. У новій версії 1.104 з'явився автоматичний вибір LLM-моделі…

12.09.2025

У США можуть ухвалити закон про податок з іноземного аутсорсингу. Чим це загрожує українським IT-фахівцям?

Сенатор-республіканець Берні Морено вніс на розгляд законопроект «Про зупинення міжнародного переміщення працівників» (HIRE Act). У…

12.09.2025

У ChatGPT з’явився Режим розробника

OpenAI запустила Режим розробника для користувачів тарифних планів ChatGPT Plus і Pro. Нова бета-функція забезпечує…

11.09.2025