Что такое VMM и почему о нём вообще заговорили

Docker Desktop славится тем, что позволяет запускать Linux-нативный Docker Engine на macOS и Windows прозрачно для пользователя. Чтобы это работало Desktop под капотом создаёт и обслуживает виртуальную машину, настраивает сеть, шаринг файловой системы и всю сопутствующую интеграцию с хостом. За создание этой ВМ отвечает virtual machine monitor (VMM, он же гипервизор). По сути это прослойка между железом хоста и контейнерами.

До сих пор Docker Desktop полагался на сторонние VMM. Hyper-V и WSL2 на Windows. А на macOS был HyperKit/Apple Virtualization Framework (p.s вообще сам Docker VMM для Apple Silicon существовал в бета-статусе ещё с версии 4.35, но именно как опция поверх Apple-фреймворка). Теперь же появляется полностью свой, first-party движок построенный, поддерживаемый и развиваемый самим Docker.

Диаграмма стека Docker: уровни Host, DockerVMM и Docker Engine.
Диаграмма стека Docker: уровни Host, DockerVMM и Docker Engine.

Что изменилось в версии 4.86

Docker теперь владеет всем стеком виртуализации целиком и может тюнинговать каждую его часть конкретно под контейнерные нагрузки, а не подстраиваться под чужой продукт с чужим roadmap`ом. Заявленные улучшения:

  • Более быстрый старт контейнеров. Ускорение заметно на всех сценариях: первый запуск, переключение между проектами, восстановление после рестарта.

  • Ускоренный файловый I/O. Обмен файлами между контейнером и хостом заметно быстрее, я думаю это должно ощущаться в каждом цикле edit-compile-test.

  • Более умное управление памятью. Docker VMM возвращает память хосту, когда контейнеры простаивают. То есть Desktop перестаёт "сидеть" на неиспользуемой RAM.

  • Стабильность на Windows. Впервые Windows-разработчики получают VMM, который написан и поддерживается самим Docker, а не сторонним поставщиком.

  • Изоляция без потери скорости. VMM по-прежнему работает в полностью изолированной ВМ. На Windows это описывается как "изоляция уровня Hyper-V при скорости уровня WSL2". Но так ли это мы узнаем уже со временем.

Важный нюанс, который стоит учитывать: единственная поддерживаемая файловая система для Docker VMM это VirtioFS. По данным документации Docker, переход на VirtioFS в своё время сократил время файловых операций на файловой системе до 98% по сравнению со старыми механизмами шаринга.

Один движок - для Desktop и для Sandboxes

Отдельно стоит отметить: тот же виртуализационный движок, что лежит в основе Docker VMM, питает и Docker Sandboxes ( изолированные окружения для запуска агентов и непроверенного кода). Это осознанное архитектурное решение: любое улучшение движка автоматически прилетает в оба продукта одновременно.

Стратегически это часть более крупного плана Docker - построить единый runtime, который охватывает ноутбук разработчика, облако и on-premise инфраструктуру, где контейнеры, Compose-приложения и AI-агенты являются равноправными гражданами одной платформы.

Как включить Docker VMM

Процедура отличается на macOS и Windows.

macOS. Если Docker VMM уже был включён в настройках (он существовал в бета-статусе с версии 4.35 для Apple Silicon), после обновления до 4.86 движок автоматически переключится на новую, полностью переписанную версию.

Windows. Нужно зайти в Settings потом в General. Там появился новый переключатель "Docker VMM". Его нужно включить вручную (по умолчанию он выключен).

Никакого feature-флага или waitlist нет: любой пользователь Docker Desktop версии 4.86 и выше может опробовать новый движок уже сегодня. У нас в РФ он также будет доступен.

Как протестировать Docker VMM самостоятельно

Готовых сторонних бенчмарков конкретно для этой (полностью переписанной) версии Docker VMM на момент официального анонса ещё немного. Бета только стартовала, и сам Docker пока не опубликовал развёрнутых цифр по сравнению со старыми движками в этом релизе. Поэтому лучший способ составить собственное мнение это потестить вручную.

  • Время старта контейнеров. Простой способ сравнить "до и после", замерить время выполнения через time:

   time docker compose up -d

Стоит прогнать несколько раз подряд (холодный старт vs. повторный запуск) и сравнить со старым VMM (Hyper-V/WSL2 на Windows, Apple Virtualization Framework на macOS).

  • Скорость файлового I/O. Классический тест - сборка проекта с большим количеством файлов (например, node_modules или сборка Go/Rust-проекта) в связке с volume-мамонтом, а также замер git status внутри контейнера с примонтированной host-директорией. Именно на этом сценарии Docker в прошлом демонстрировал наибольший выигрыш от VirtioFS.

  • Потребление памяти в простое. На Windows проверяйте через Task Manager (процесс, отвечающий за ВМ Docker). А на macOS проверяйте через Activity Monitor. Стоит оставить Docker Desktop открытым с остановленными контейнерами на 10–15 минут и посмотреть, возвращается ли память хосту.

  • Стабильность при длительной работе. Так как это бета, отдельного внимания заслуживает не только сырая производительность, но и стабильность при долгих сессиях: пересборки, множественные docker compose up/down, работа с большим количеством одновременно запущенных контейнеров.

Чего стоит ждать в будущем

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

General Availability (GA) запланирован на конец октября 2026 года. С этого момента Docker VMM станет движком по умолчанию для всех новых установок Docker Desktop на macOS, Windows и, впервые, на Linux.

Комментарии (17)


  1. suprunchuk
    13.08.2026 11:17

    Интересно. У меня 4.86 версия, но нет этого переключателя.


    1. MrBotikkk
      13.08.2026 11:17

      issues Switch to Docker VMM

      So, I will suggest change "Go to Settings > General > Virtual Machine Manager. " to "Go to Settings > General > Linux backend type. "


      1. suprunchuk
        13.08.2026 11:17

        еще раз напишу, что у меня нет такого на той же версии.


        1. suprunchuk
          13.08.2026 11:17

          upd: появилась фича, с сервера видимо включили. даже без ребута сама появилась.


    1. stnkv-it Автор
      13.08.2026 11:17

      Судя по заявлению от Docker должны уже завезти
      У себя еще не проверял (только unix-системы юзаю).
      Проверю на win - отпишусь


    1. lonberg
      13.08.2026 11:17

      Действительно странно. Только что обновил до "Version 4.86.0 (236216)" и у меня есть VMM


  1. IvanFilatov
    13.08.2026 11:17

    А насколько Podman, как альтернатива docker, лучше?


    1. ammareTTo
      13.08.2026 11:17

      В плане безопасности намного лучше. Есть rootless режим, есть полноценная изоляция и нет главного процесса, если какой то контейнер упадет остальные будут живы, интеграция в systemd отличная можно контейнеры как службы делать, интеграция SELinux и режим обучения.


    1. pesh1983
      13.08.2026 11:17

      У меня на подмане не завелся xvfb, хром не запустится. Подозреваю, что из-за того, что подман использует qemu. На докере работал, на подмане ошибка. Тестировал на Макоси.

      Также не запустится дебаг в контейнере в intellij idea, хотя бета поддержка вроде заявлена.

      Поэтому пока на докере.

      Посмотрите в сторону Colima, очень интересна, как потенциальная замена докеру


      1. IvanFilatov
        13.08.2026 11:17

        у меня Windows. Colima не совместима.


      1. ammareTTo
        13.08.2026 11:17

        xvfb официально поддерживается podman, возможно версия старая или у вас какие-то настройки специфические, кстати и докер, и podman не используют qemu если это Линукс, если не Линукс то ОБА используют, я лично Линукс только на серверах кручу, но у меня не было проблем ни с одним контейнером докера который я отправлял в podman, они ведь и заявлены как drop in replacement. Единственное что в podman функционал создания контейнера вынесен в отдельный пакет, когда в докере это все сразу в 1, но это даже лучше ведь я банально меньше почти в 2 раза ставлю мусора в систему. Если что у меня все на gentoo крутится.


    1. Inoriol
      13.08.2026 11:17

      Как среда разборки и тестирования — прилично хуже. Просто тулзов недостаточно.

      Как среда запуска контейнеров — архитектурно значительно элегантнее и безопаснее.


  1. izogfif
    13.08.2026 11:17

    А как обстоят дела с поддержкой гипервизора Docker VMM у систем, которыми можно запускать виртуалки? Hyper-V Manager, Oracle VM VirtualBox, VMware Workstation позволят запустить виртуалки, если я заменю Hyper-V на Docker VMM? Или опять при запуске будет ругаться "отключите этот ваш гипервизор" (как было года 4 назад) или тормозить нещадно (как было года 2 назад в VMware Workstation, когда они поддержку Hyper-V только-только реализовали)? Не хотелось бы опять остаться перед выбором "или Docker, или виртуалки".

    единый runtime, который охватывает ноутбук разработчика

    Ну что ж такое-то? Ну неужто так сложно организовать разработчику нормальное рабочее место со стационарным компьютером? Или ваши разработчики постоянно в разъездах и пишут код в дороге между командировками?


    1. Inoriol
      13.08.2026 11:17

      Или ваши разработчики постоянно в разъездах и пишут код в дороге между командировками?

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

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


  1. maxnoosphere
    13.08.2026 11:17

    а с вложенной виртуализацией как обстoят дела? типа обычные виртуалки типа виртуалбокса параллельно запускать можно будет или всё тот же конфликт с гипервизором?


  1. itoolsy
    13.08.2026 11:17

    Я не настоящий сварщик, только учусь. Почему на схеме слоев виртуализации Docker VMM работает типа как гипервизор 1-го типа, хотя это не так. Или они под словом host понимают железо+ОС, тогда да, мой косяк


    1. stnkv-it Автор
      13.08.2026 11:17

      Всё верно, под host они имеют ввиду аппаратное обеспечение (железо) и основную операционную систему.