Docker Desktop на Mac работает, но каждая сборка напоминает о том, что программа написана на Electron и крутит полноценную виртуальную машину. Тридцать секунд до запуска, два гигабайта в простое, вентиляторы на максимум.
OrbStack решает ту же задачу — запуск контейнеров на macOS — но написан на Swift и оптимизирован под Apple Silicon. Запуск за две секунды, меньше 0.1% CPU в простое, меньше 10 МБ на диске.
Что это
OrbStack — нативное приложение для macOS, которое запускает Docker-контейнеры, полноценные Linux-машины и Kubernetes-кластеры. Разработка Orbital Labs из Сан-Франциско. Закрытый код, но часть компонентов открыта.
Docker Desktop (официальный клиент Docker для macOS и Windows) работает через Electron — фреймворк, который оборачивает веб-страницу в десктопное приложение. Под капотом крутится виртуальная машина на базе QEMU. Это тяжёлая архитектура: VM загружается 30-60 секунд, потребляет 2-4 ГБ памяти даже без контейнеров и держит CPU под нагрузкой.
OrbStack построен иначе. Нативное Swift-приложение (язык программирования от Apple для macOS и iOS) использует легковесную виртуализацию вместо полноразмерной VM и интегрируется с macOS на уровне файловой системы и сети. Результат — запуск за 2 секунды и практически нулевое потребление в простое.
Поддерживает Apple Silicon (M1/M2/M3/M4) и Intel Mac. С версии 1.0 доступен и на Linux — сборки для Ubuntu, Debian и Fedora. Главная аудитория, тем не менее, пользователи macOS.
Зачем нужно
Контейнеризация (упаковка приложения со всеми зависимостями в изолированную среду) — стандарт в разработке. Docker-контейнеры позволяют запускать один и тот же код на ноутбуке разработчика и на production-сервере без рассинхрона окружения.
На macOS контейнеры не работают напрямую: ядро macOS не поддерживает cgroups и namespace — механизмы Linux, на которых построен Docker. Любой инструмент для запуска контейнеров на Mac обязан поднять скрытую Linux-виртуальную машину. Вопрос только в том, насколько эффективно эта VM устроена.
Docker Desktop решает задачу, но платит ресурсами. OrbStack решает ту же задачу с другим соотношением цена/качество:
- Запуск за 2 секунды вместо 30-60
- Меньше 0.1% CPU в простое на Apple Silicon
- Память выделяется по требованию, не резервируется заранее
- Менее 10 МБ на диске в базовой установке
- Нативное Swift-приложение вместо Electron
- Бесплатно для личного использования, $8/мес для коммерческого
Инсайт: разница в архитектуре не косметическая. Docker Desktop резервирует память и CPU для VM заранее — OrbStack выделяет ресурсы по требованию и возвращает их системе, когда контейнеры не работают. На ноутбуке это означает, что батарея не разряжается, а вентиляторы не включаются от простого запуска docker compose.
Как устроено
OrbStack объединяет три runtime-слоя (среды выполнения) в одном приложении. Каждый слой можно использовать независимо или вместе.
Docker Engine
Docker Engine — движок, который непосредственно запускает и управляет контейнерами. OrbStack подменяет движок под капотом, но сохраняет полную совместимость с CLI, Compose, Buildx и всей экосистемой Docker. Команды docker ps, docker compose up и существующие Dockerfile работают без изменений.
Совместимость означает, что сторонние инструменты — Earthly, VS Code Dev Containers, любые плагины для Docker CLI — продолжают работать. OrbStack использует немодифицированный Docker engine с настройками, аналогичными Docker Desktop. Переключение прозрачно: создаётся символическая ссылка на /var/run/docker.sock, и инструменты не замечают разницы.
Linux-машины
Помимо контейнеров, OrbStack запускает полноценные Linux-виртуальные машины одной командой. Поддерживается 16 дистрибутивов: Ubuntu, Debian, Fedora, Arch, Alpine, Kali, Rocky и другие. Машина стартует за секунду, файловая система и сеть разделяются с хостом (компьютером macOS) автоматически.
# Создать Ubuntu-машину
orb create ubuntu my-dev
# Зайти в неё
orb -m my-dev
# Подключиться по SSH
ssh my-dev@orb
# Выполнить команду без входа
orb -m my-dev -- apt update
# Список всех машин
orb list
# Остановить / удалить
orb stop my-dev
orb delete my-dev
Файлы Mac доступны внутри Linux-машины без настройки томов (volumes — механизм Docker для обмена файлами между хостом и контейнером). VirtioFS — виртуальная файловая система, разработанная для виртуальных машин — обеспечивает доступ к /Users/… на скорости, в разы превышающей Docker Desktop. SSH-агент (программа для аутентификации по ключам) пробрасывается автоматически: приватные репозитории можно клонировать сразу, без копирования ключей.
Intel-машины на Apple Silicon работают через Rosetta 2 (транслятор x86-инструкций в ARM, встроенный в macOS). Это позволяет запускать x86-образы на M-чипах почти с нативной скоростью.
Kubernetes
Kubernetes (k8s) — система оркестрации контейнеров для production. OrbStack включает встроенный k8s-кластер, который включается в настройках. Без minikube (локальный Kubernetes для разработки), без kind (Kubernetes-in-Docker), без дополнительных установок.
# Включить кластер
orb start k8s
# Стандартный kubectl
kubectl get nodes
# NAME STATUS ROLES AGE VERSION
# orbstack Ready control-plane 1m v1.30.x
kubectl apply -f deployment.yaml
kubectl get pods
Кластер поддерживает NodePort (проброс порта на хост), ClusterIP (внутренний адрес сервиса) и LoadBalancer (распределение нагрузки) — три типа доступа к сервисам в Kubernetes. Для LoadBalancer OrbStack автоматически создаёт wildcard-домены (шаблонные адреса вида .orb.local), что упрощает тестирование Ingress-контроллеров.
Ключевые возможности
Несколько деталей, которые отличают OrbStack от Docker Desktop на уровне повседневной работы:
- Автоматические домены — каждый контейнер получает адрес вида container-name.orb.local. Открывается в браузере без проброса портов через -p. Для HTTPS-сертификатов доступна автоматическая генерация.
- Доступ к файлам образов и томов — содержимое Docker volumes и образов доступно в Finder и через терминал на Mac. Не нужно монтировать тома или использовать docker cp для просмотра файлов.
- GUI для логов и метрик — встроенный интерфейс показывает логи, CPU, память и сеть по каждому контейнеру в реальном времени. Управление доступно из строки меню macOS.
- VPN и Tailscale — WireGuard, Tailscale и другие VPN работают внутри контейнеров без дополнительной настройки. DNS и IPv6 поддерживаются нативно.
- USB passthrough — USB-устройства можно пробросить в контейнер или Linux-машину. Поддерживается и звук — аудио работает в обе стороны.
- Изолированные машины — sandbox-режим для запуска недоверенного кода. Машина изолирована от хоста: нет доступа к файлам, сети и устройствам.
- eBPF — поддерживается eBPF (механизм запуска программ в ядре Linux для трассировки и фильтрации). ICMP-пинг и traceroute работают из контейнеров.
Совет: после установки OrbStack сам предложит мигрировать контейнеры и тома из Docker Desktop одной кнопкой. Образы и сети переезжают, имена сохраняются. Откат обратно к Docker Desktop работает так же просто.
Когда использовать
Установка
Два варианта: Homebrew (пакетный менеджер для macOS) или скачивание с официального сайта.
# Вариант 1: Homebrew (рекомендуется)
brew install --cask orbstack
# Вариант 2: скачать с orbstack.dev
# Скачать → перетащить в Applications → запустить
После первого запуска OrbStack предложит включить Docker CLI, мигрировать данные из Docker Desktop и установить команды orb, docker, kubectl. Для установки CLI-инструментов и создания символической ссылки на /var/run/docker.sock потребуется права администратора — но это необязательно, от администраторских прав можно отказаться.
Разработка на Docker Compose
Docker Compose — инструмент для описания multi-container приложений в одном YAML-файле. Клонируете проект, запускаете docker compose up — всё работает как на любом Docker-совместимом окружении. Разница в скорости: сборка образов на Apple Silicon идёт заметно быстрее за счёт нативной виртуализации.
Тест self-hosted сервисов
Нужно проверить Directus (headless CMS), Strapi, Supabase, n8n или PostgreSQL на Mac перед деплоем на сервер — OrbStack подходит. Стек поднимается за минуту, тестируется, сносится одной командой.
docker compose up -d directus
# открыть http://directus.orb.local
Автоматические домены означают, что не нужно прописывать порты в docker-compose.yml или открывать каждый сервис вручную. Каждый контейнер получает свой .orb.local-адрес.
Полноценная Linux-среда
Собрать проект под Linux, проверить bash-скрипты для деплоя, поработать с systemd (система управления службами в Linux) — создаёте Ubuntu-машину и работаете как на удалённом сервере, но локально и мгновенно. VS Code подключается по SSH с пробросом агента — редактор работает на Mac, файлы и терминал — внутри Linux.
Локальный Kubernetes
Изучаете Kubernetes или тестируете Helm-чарты (пакеты для Kubernetes) — включаете встроенный кластер, накатываете манифесты, смотрите результат. Без minikube и настройки окружения.
Лицензия и цены
OrbStack — платный продукт. После выхода из бета-тестирования бесплатная версия осталась только для личного использования.
| План | Цена | Условия |
|---|---|---|
| Personal | $0 | Личные проекты, учёба, опенсорс. Без урезанного функционала. |
| Pro | $8/мес ($96/год) | Коммерческое использование, Debug Shell, приоритетная поддержка. |
| Enterprise | По запросу | SAML SSO, оплата по счёту, централизованное управление. |
Политика лицензирования:
- Личное использование — бесплатно навсегда
- Коммерческое использование — $8 с пользователя в месяц
- Образование — бесплатные лицензии по запросу
- Некоммерческий опенсорс — бесплатные лицензии по запросу
- Коммерческий опенсорс — требуется лицензия Pro
- 30 дней испытательного срока перед обязательной покупкой
Подписка, а не разовая покупка. Разработчики объясняют это так: компоненты OrbStack требуют постоянных обновлений — совместимость с новыми версиями macOS, ядром Linux, новыми функциями Docker. Разовые платежи не покрывают эти расходы, а модель major-version upgrades заставляет задерживать релиз фич ради одного большого обновления.
Ограничения
Ограничения
Что учитывать
Перед переходом на OrbStack нужно понимать границы продукта.
Windows — Поддержки нет и не планируется.
Ядро OrbStack завязано на macOS и Linux. Для Windows — Docker Desktop или WSL2.
GPU в контейнерах — Поддержка ограничена.
Для ML-задач с CUDA (платформа параллельных вычислений NVIDIA) лучше использовать удалённые серверы с GPU.
Docker Extensions — Расширения Docker Desktop (плагины для GUI) не поддерживаются.
Если в компании используется специфичный плагин Desktop — возможны нюансы совместимости.
Docker Scout
— Инструмент анализа безопасности образов от Docker недоступен в OrbStack.
Закрытый код — OrbStack — проприетарный продукт.
Часть компонентов открыта, но ядро закрыто. Это может быть барьером для команд с политикой open-source only.
Ограничение реестра — Docker Desktop позволяет ограничить доступ к реестрам образов на уровне приложения.
В OrbStack такой политики нет.
Антипаттерны
Антипаттерны
Чего не делать
Несколько сценариев, в которых OrbStack — не лучший выбор или требует осторожности.
Не использовать как production-runtime — OrbStack — инструмент для разработки и тестирования на рабочей станции.
Не запускайте на нём production-нагрузку. Для production — Kubernetes-кластер или облачный Docker.
Не рассчитывать на GPU — Если контейнерам нужен CUDA или Metal (графический API Apple) — OrbStack не подходит.
ML-тренировки и инференс требуют серверного GPU.
Не игнорировать лицензию — 30-дневный испытательный срок заканчивается.
Коммерческое использование без лицензии — нарушение условий. Проверьте, подпадает ли ваша работа под personal или нужна Pro.
Не ждать полной совместимости с Docker Desktop — OrbStack — drop-in замена для Docker engine, но не для Docker Desktop GUI.
Extensions, Scout и некоторые корпоративные функции отсутствуют.
Чеклист
Чеклист
Проверка перед запуском
Что проверить перед переходом с Docker Desktop на OrbStack.
Архитектура — OrbStack работает на macOS (Apple Silicon и Intel) и Linux (Ubuntu, Debian, Fedora).
Windows не поддерживается.
Docker CLI — После установки проверьте: docker ps работает, docker compose up запускается.
Символическая ссылка /var/run/docker.sock создана.
Миграция — Если переходите с Docker Desktop — используйте встроенную миграцию.
Образы, тома и сети переедут автоматически.
Лицензия — Определите тип использования: личное (бесплатно) или коммерческое ($8/мес).
Некоммерческий опенсорс и образование — по запросу.
VPN и сеть — Если используете Tailscale, WireGuard или корпоративный VPN — проверьте, что они работают внутри контейнеров.
OrbStack поддерживает их без настройки, но стоит убедиться.
Kubernetes — Если нужен k8s — включите в настройках.
Проверьте kubectl get nodes и kubectl apply -f с тестовым манифестом.
Изолированные машины — Если запускаете недоверенный код — используйте isolated machines, а не обычные контейнеры.
Изоляция отключает доступ к файлам, сети и устройствам хоста.
Ссылки
Ссылки
- Сайт: OrbStack
- Документация: OrbStack Docs
- Сравнение: OrbStack vs Docker Desktop
- Сайт: OrbStack FAQ
- Тарифы: OrbStack Pricing