Совместное размещение докеров и виртуальных боксов в Windows
Docker использует функции Hyper V, поэтому он должен быть включен, чтобы Docker работал правильно. Однако функциональность Hyper V должна быть отключена для правильной работы VirtualBox (возможно создание гостей и эмуляция их, но только если они 32-битные машины).
Есть ли способ иметь здоровое совместное проживание с ними и работать одновременно? Вместо включения/отключения опции Hyper V и перезагрузки каждый раз?
Ответы
Ответ 1
Я понимаю вашу причину боли, но AFAIK этого просто невозможно достичь из-за простого факта, что технологии виртуализации, о которых вы говорили здесь, имеют разные типы.
Hyper-V - гипервизор "Тип 1", который работает на аппаратном оборудовании хоста. Другие примеры в этой категории включают Citrix XenServer и VmWare ESXi. Виртуальный ящик - это гипервизор, который находится в режиме "Тип 2", который работает в ОС. Другие примеры в этой категории включают VmWare Player.
Если вам нужно переключить b/w, перезапуск будет выдающимся.
Быстрый способ просмотра режима - запустить "bcdedit" из командной строки, чтобы увидеть текущую конфигурацию.
- Чтобы отключить запуск Hyper-V:
bcdedit/set hypervisorlaunchtype off
- Чтобы снова включить Hyper-V:
bcdedit/set hypervisorlaunchtype auto
Однако вам придется перезагружаться в обоих случаях. Я просто упомянул простой способ конфигурации, чтобы вы поняли, что происходит в загрузчике при переключении между режимами гипервизора Type 1 и Type 2.
Ответ 2
Нет, нет.
Просто сделайте так, как я, и создайте эти виртуальные машины в Hyper-V. Hyper-V очень быстрый, и единственная проблема заключается в графике. Ну, а также и общие папки.
Я установил Xserver для Windows (xming) и отправил дисплей с виртуальной машины на рабочий стол и отлично работает.
- Загрузите и установите xserver в окнах отсюда: https://sourceforge.net/projects/vcxsrv/
- Установите дистрибутив на новую виртуальную машину Hyper-V. Обратитесь в Интернет для получения инструкций.
- Запустите свою виртуальную машину и откройте командную строку вне GUI: Ctrl + Alt + F2. Введите следующие команды:
sudo apt install xfce4 echo xfce4-session >~/.xsession env DISPLAY=yourwindowsip:0.0 LIBGL_ALWAYS_INDIRECT=1 startxfce4
Он должен запустить рабочий стол xfce в окнах. Вы можете уменьшить панели, а также скрыть окно рабочего стола. Он работает очень хорошо и хорошо интегрирован с рабочим столом Windows
ОБНОВЛЕНИЕ Убедитесь, что ваша виртуальная машина и ваш хост не получат один и тот же IP-адрес. Если это произойдет, введите статический IP-адрес в вашей виртуальной машине.
Ответ 3
У вас не может быть Hyper-V и VirtualBox вместе. Но вы можете использовать старшую панель инструментов докеров, если хотите. В отличие от Docker for Window, Docker Toolbox использует VirtualBox, и вам не понадобится Hyper-V.
Ответ 4
Если вы установите бета-канал Docker для Windows, он предоставит вам виртуальную виртуальную машину Hyper-V, которая будет существовать совместно с Docker, запущенным изначально на Windows.
Затем вы можете легко переключаться между Windows и Linux Docker Engines в том же окне Windows.