Как настроить Docker на Windows 10, чтобы использовать виртуальную машину (например, Hyper-V), а не WSL2?

Как настроить Docker на Windows 10 для работы с виртуальной системой, такой как HyperV, вместо использования WSL2?
  • 3 ноября 2023 г. 18:28
Ответы на вопрос 2
Для настройки Docker на Windows 10 с использованием виртуальной машины, такой как Hyper-V, вам понадобятся следующие шаги:

1. Установите Docker Desktop для Windows: Перейдите на официальный сайт Docker и загрузите установочный файл Docker Desktop для Windows. Запустите установку и следуйте инструкциям.

2. Отключите WSL2 в Docker Desktop: После установки Docker Desktop перейдите в его настройки. Перейдите в раздел "Resources" -> "WSL Integration" и убедитесь, что все галочки сняты для интеграции с WSL2.

3. Включите использование Hyper-V: Перейдите в раздел "Settings" -> "General" и установите флажок "Use the WSL 2 based engine" (3). Примените изменения и перезапустите Docker Desktop.

4. Создайте новую машину виртуальной машины Hyper-V: Если у вас нет созданной виртуальной машины, создайте ее, используя Hyper-V Manager или командную строку PowerShell. Убедитесь, что виртуальная машина запущена и готова к использованию.

5. Настройте Docker Desktop для работы с Hyper-V: Перейдите в раздел "Settings" -> "Resources" -> "WSL Integration" и установите галочку для включения Hyper-V для конкретной виртуальной машины. Укажите имя созданной виртуальной машины Hyper-V.

6. Перезапустите Docker Desktop: После настройки Docker Desktop перезапустите его, чтобы изменения вступили в силу.

Теперь Docker будет использовать виртуальную машину Hyper-V вместо WSL2 на Windows 10. Вы можете запустить контейнеры и использовать Docker как обычно.
Docker desktop официально не поддерживает эту функцию. Единственный вариант - установить виртуальную машину в Hyper-V, установить там Docker Daemon/Docker Engine, а на основной системе установить Docker CLI и подключиться по TCP. Однако, лично я не вижу большой пользы в этом, так как WSL2 уже представляет собой виртуальную машину в Hyper-V, и Docker Desktop просто запускает дополнительный экземпляр для своих нужд.
Похожие вопросы