GUI-приложения со встроенным Kubernetes
Docker Desktop, Rancher Desktop, OrbStack, colima и Podman Desktop: какой кластер внутри, что с портами и лицензией.
Ставишь одно приложение, ставишь галочку в настройках, через минуту у тебя есть кластер. Так работают десктопные пакеты. Платишь за это выбором версии Kubernetes, отсутствием multi-node у половины вариантов и иногда деньгами.
Ниже пять вариантов. Четыре дают кластер сами, пятый только рисует кнопки поверх чужих инструментов.
Docker Desktop
Версия 4.89.0 от 2026-08-31. Внутри два разных механизма создания кластера, и это главное, что о нём надо знать.
| kubeadm | kind | |
|---|---|---|
| Multi-node | нет | да |
| Выбор версии Kubernetes | нет | да |
| Время создания | ~1 мин | ~30 с |
| Хранилище образов | Docker image store | только containerd |
| Известная несовместимость | Enhanced Container Isolation | Docker image store |
Начиная с версии 4.65.0 для новых кластеров по умолчанию выбирается провижнер kind. У kubeadm-пути версию Kubernetes задать нельзя: последнее задокументированное обновление там - k8s v1.36.1 в Docker Desktop 4.80.0.
Кластер не апгрейдится вместе с приложением. Обновил Docker Desktop - кластер остался на прежней версии Kubernetes. Единственный способ сменить версию на kubeadm-пути - Reset cluster, то есть снести и пересоздать. Контекст в kubeconfig называется docker-desktop.
Требования различаются по системам. На macOS нужен текущий или один из двух предыдущих мажорных релизов и не меньше 4 GB RAM. На Windows - 10 версии 22H2 либо 11 версии 23H2 и выше, редакция Pro, Enterprise или Education, 8 GB RAM и WSL2 не ниже 2.1.5 либо Hyper-V. На Linux поддержаны Ubuntu, Debian, RHEL и Fedora, только x86-64, с KVM. Виртуальная машина по умолчанию забирает 50% памяти хоста.
С портами всё неплохо: Service типа LoadBalancer автоматически получает EXTERNAL-IP: localhost, за это отвечает vpnkit-controller.
А вот Ingress из коробки нет. Внутри Docker Desktop живёт форк cloud-provider-kind версии v0.6.0, а нативная поддержка Ingress появилась в апстриме только в v0.9.0. То есть на «чистом» Docker Desktop контроллер Ingress придётся ставить самому.
StorageClass на kind-пути называется standard. Для kubeadm-пути имя класса и provisioner в официальной документации не названы, так что заранее рассчитывать на конкретное имя нельзя.
Лицензия
Docker Subscription Service Agreement, параграф 3.2 в редакции от 2026-08-26. Бесплатно приложение можно использовать в некоммерческом open source и в коммерческой организации, у которой одновременно менее 250 сотрудников и менее $10 000 000 годовой выручки. Превышение любого из двух порогов требует подписки. Государственные организации платят всегда, порогов для них нет.
Тарифы: Personal $0, Pro $11 в месяц, Team $16, Business $24.
Грабли
Docker сам пишет в known issues, что часть образов не имеет варианта под ARM64. Флаг --platform linux/amd64 работает нестабильно, а inotify под эмуляцией QEMU не работает вообще - это ломает всё, что следит за изменениями файлов.
Rancher Desktop
Версия 1.24.0 от 2026-07-29, проект SUSE, лицензия Apache 2.0. Никаких порогов по сотрудникам и выручке.
Внутри k3s, и версию Kubernetes здесь выбирают из списка. В теге v1.24.0 доступны 154 версии, от v1.25.3+k3s1 до v1.36.2+k3s1, stable отмечена 1.36.2. Апгрейд версии сохраняет workloads, а вот даунгрейд их удаляет. Это ровно тот случай, когда «просто попробую откатиться» стоит запущенных Deployment.
winget install -e --id suse.RancherDesktop
choco install rancher-desktop
brew install --cask rancher # официально проектом не поддерживается
rdctl start --kubernetes-version 1.36.4
rdctl set --kubernetes-enabled=false
rdctl shutdown
rdctl reset --factory
Требования: macOS 13 и выше, Windows 11 или Server 2025, Linux x86_64 с /dev/kvm. Рекомендуется 8 GB RAM и 4 ядра. Бэкенд виртуализации - WSL2 на Windows, VZ на macOS 14+, иначе QEMU. Дефолты виртуальной машины: 2 CPU, память min(6, RAM/4) GB на macOS и Linux, 2 GB на Windows.
Multi-node нет. Формулировка документации: «single cluster with single node setup». Обходной путь - поднять k3d поверх, но такие кластеры уже не управляются из GUI.
Порты обслуживает ServiceLB из k3s плюс автоматический проброс из виртуальной машины на хост, он появился в версии 1.9. Порты 1024 и ниже требуют административного доступа.
Ingress работает сразу: Traefik включён и держит 80 и 443. Снимается галкой в Preferences → Kubernetes. StorageClass - local-path, дефолтный.
В комплекте 1.24.0 приезжают docker 29.6.2, docker-compose 5.3.1, helm 4.2.3, nerdctl 2.2.2 и trivy 0.72.0.
Грабли. Автообновление было сломано в 1.23.0 и 1.23.1, починили только в 1.24.0 - если сидишь на старой версии, обновляться придётся руками. Windows 10 в списке поддерживаемых систем отсутствует. Cask rancher в Homebrew конфликтует с docker-desktop.
OrbStack
Только macOS. Версия v2.2.3 от 2026-08-07, Kubernetes 1.35. Версию Kubernetes выбрать нельзя, она привязана к версии приложения.
Что именно внутри, вендор прямо не заявляет. Косвенный признак - документация по Istio требует путей /var/lib/rancher/k3s/…, что указывает на k3s, но утверждать это как факт нельзя.
Требования: macOS 14.0 и выше, Apple Silicon и Intel. Минимальный объём RAM разработчики не публикуют, известен только лимит памяти по умолчанию - не более 8 GB.
brew install --cask orbstack
orb start k8s
orb stop k8s
orb delete k8s
Multi-node нет, документация сама отправляет за этим к kind или k3d.
Сетевой доступ здесь лучший из всего обзора. Дословно: «All Kubernetes service types are accessible directly from Mac, so port forwarding is not needed». LoadBalancer и Ingress отдаются по wildcard-домену *.k8s.orb.local, NodePort открывается как curl -I localhost:32042, а ClusterIP и даже Pod IP пингуются с Mac напрямую. Ни kubectl port-forward, ни туннелей.
При этом Ingress-контроллера в комплекте нет: «No Ingress controller is installed by default». Красивая маршрутизация есть, а обрабатывать объекты Ingress некому, пока контроллер не поставишь сам.
StorageClass официально не задокументирован.
Лицензия
Проприетарная и жёстче, чем у Docker Desktop. Free-план покрывает только личное некоммерческое использование. Pro стоит $8 за пользователя в месяц или $96 в год, есть 30-дневный триал.
По формулировке условий использования платить обязаны: фрилансер, коммерческая организация, некоммерческая организация, государственная организация, а также тот, кто зарабатывает больше $10 000 в год в связи с использованием продукта. Порогов «до 250 сотрудников» здесь нет вообще: некоммерческая организация из трёх человек уже платит. Некоммерческое образовательное использование лицензии не требует.
Грабли
Главная: NetworkPolicy молча не применялись вплоть до v2.2.3, в её changelog значится «Fixed network policies not being enforced». На 2.2.2 и ниже ты применяешь политику, kubectl get networkpolicy показывает её как созданную, а трафик продолжает ходить. Для учебных сценариев это худший вид ошибки - ложноположительный результат: разбираешь тему сетевых политик и делаешь неверный вывод о том, как они работают.
Вторая мелочь: Kubernetes всегда пытается пуллить теги :latest, поэтому для локально собранных образов нужно прописывать imagePullPolicy: IfNotPresent.
Замеров производительности под текущую версию нет. Вендорские «0.1% CPU idle» и «starts in seconds» - маркетинговые формулировки без опубликованной методики.
colima
Версия v0.10.3 от 2026-06-04, лицензия MIT, слой виртуализации - Lima. Работает на macOS 13 и выше (Intel и ARM) и на Linux. Кластер даёт k3s версии v1.35.0+k3s1, меняется флагом.
brew install colima
colima start --kubernetes
colima start --kubernetes --kubernetes-version v1.35.0+k3s1 --cpu 4 --memory 8
colima stop
colima delete
Дефолты виртуальной машины: 2 CPU, 2 GiB RAM, 100 GiB диска. Тип VM - vz на macOS 13+, иначе qemu.
Флаги --arch, --vm-type, --mount-type и --runtime фиксируются в момент создания виртуальной машины. Поменять их потом можно только через colima delete, то есть пересозданием.
Multi-node нет, FAQ отправляет к minikube, kind или k3d.
Порты пробрасывает Lima автоматически, NodePort доступен как localhost:<nodePort>. Отдельный IP у виртуальной машины включается флагом colima start --network-address, только на macOS. Тонкость: при включённом --network-address, работающем Kubernetes и не отключённом ingress colima намеренно перестаёт форвардить 80 и 443, чтобы Traefik не занял эти порты на хосте. Ходить в таком режиме надо на IP виртуальной машины.
Ingress по умолчанию выключен: --disable=traefik зашит в конфигурацию. При этом servicelb не отключается. StorageClass local-path присутствует и дефолтный, отдельного заявления проекта об этом нет, это видно по коду.
Грабли. Самая неприятная - открытый issue #1627: colima мержит свой контекст в первый файл из переменной $KUBECONFIG. Если первым там стоит рабочий kubeconfig от продового кластера, colima запишет в него. Держи отдельный файл или проверяй порядок в $KUBECONFIG заранее.
Дальше: открытый баг #1452 «Rosetta x86 mmap() causes SIGSEGV», обновлялся 2026-08-28, то есть запуск x86-образов через Rosetta может падать. Issue #1170 с формулировкой «OS reboot almost always breaks Colima». И #711 - colima не наследует системный DNS, это больно под VPN.
Podman Desktop
Версия v1.29.1 от 2026-07-31. Работает на Windows (x64 и arm64), macOS (universal) и Linux (Flatpak и tar.gz).
winget install -e --id RedHat.Podman-Desktop
brew install --cask podman-desktop
flatpak install flathub io.podman_desktop.PodmanDesktop
Собственного кластера Podman Desktop не создаёт. Он поднимает Podman-машину и предоставляет расширения, которые дёргают kind и minikube. Это GUI поверх чужих инструментов, а не отдельная реализация Kubernetes.
Порядок работы с kind: поставить kind CLI, на Windows перевести Podman в rootful-режим (именно на Windows это обязательно), дальше Settings → Resources → Kind → Create new. Контекст появится под именем kind-<имя>.
Podman-машина по умолчанию получает 2 CPU и 2 GB памяти, для рабочего kind-кластера памяти стоит дать 4 GB и больше.
Кому подходит: тем, кто на Windows или macOS не хочет ставить Docker Desktop из-за лицензии, и тем, кому нужен графический интерфейс поверх kind.
Кому что подходит
| Приложение | Multi-node | Версия Kubernetes | Ingress из коробки | Лицензия |
|---|---|---|---|---|
| Docker Desktop | только на kind-пути | на kind-пути выбирается, на kubeadm нет | нет | платно от 250 сотрудников или $10M выручки |
| Rancher Desktop | нет | из списка версий k3s | Traefik включён | Apache 2.0 |
| OrbStack | нет | привязана к версии приложения | нет | $8 в месяц, free только личное |
| colima | нет | флагом --kubernetes-version | Traefik выключен | MIT |
| Podman Desktop | как у kind | как у kind | как у kind | своего кластера не создаёт |
Windows и организация, которая проходит по порогам Docker (менее 250 сотрудников и менее $10M выручки), - Docker Desktop, самый короткий путь.
Не хочешь считать сотрудников и выручку вообще - Rancher Desktop. Apache 2.0, выбор версии k3s, Traefik в комплекте. Плата за это - отсутствие multi-node и Windows 11 как минимум.
macOS, нужен прямой сетевой доступ к Pod и Service без проброса портов, готов платить $8 в месяц (или используешь строго лично) - OrbStack. Проверь версию: на всём, что ниже v2.2.3, NetworkPolicy не работают.
macOS или Linux, нужен минимализм и командная строка без GUI - colima. Ingress придётся включать самому.
Нужен GUI, но кластер хочется стандартный kind - Podman Desktop.
Multi-node не даёт ни один из десктопных вариантов, кроме kind-пути в Docker Desktop. За несколькими нодами - к kind, k3d или minikube напрямую.
Коротко
- Docker Desktop 4.89.0 умеет два провижнера: kubeadm (одна нода, версия не выбирается) и kind (multi-node, версия выбирается, дефолт с 4.65.0). Кластер не апгрейдится вместе с приложением.
- Docker Desktop бесплатен для некоммерческого open source и организаций менее 250 сотрудников и менее $10M выручки одновременно; госорганизации платят всегда.
- Rancher Desktop 1.24.0 - Apache 2.0 без порогов, k3s с выбором версии, но даунгрейд удаляет workloads и multi-node нет.
- OrbStack v2.2.3 даёт лучший сетевой доступ (
*.k8s.orb.local, Pod IP пингуются с Mac), но Ingress-контроллера нет, лицензия жёстче Docker Desktop, а NetworkPolicy до v2.2.3 молча не применялись. - colima v0.10.3 - MIT и k3s, Traefik выключен по умолчанию, multi-node нет, аккуратнее с
$KUBECONFIG. - Podman Desktop сам кластер не создаёт, это GUI поверх kind и minikube; на Windows нужен rootful-режим Podman.
Прошли материал до конца? Отметьте урок пройденным.
Прогресс сохранён в этом браузере
Почистишь историю или откроешь с телефона, и отметки пропадут. Оставь почту, они переедут в аккаунт. Пароль придумывать не нужно.
Готово. теперь в аккаунте: прогресс виден с любого устройства. Мой прогресс