Ошибка машины Docker: модуль Hyper-V PowerShell недоступен

Я проверил настройки Hyper-V, и модуль PowerShell включен. Я также нашел эту документированную проблему:https://github.com/docker/machine/issues/4342 но это не та же проблема, так как у меня нет VMware PowerCLI установлен. Проблема была закрыта с толчком к РЕПО и предположительно исправлена в 0.14.0-rc1, build e918c74, поэтому я все равно попробовал. После замены моей докер-машины.exe, я все еще получаю ошибку и все еще получаю ошибку, даже если я переустановил Docker для окон.

для некоторого фона эта ошибка начинается после переустановки, потому что у моей установки Docker была ошибка:https://github.com/docker/for-win/issues/1691, однако, я больше не получаю эту проблему после переустановки.

5 ответов


при создании виртуальной машины Hyper-v с помощью docker-machine на win10 была возвращена ошибка "ошибка с предварительной проверкой создания: " модуль Hyper-V PowerShell недоступен"。

решение очень простое. Причина-версия программы docker-machine. Замените его на v0.13.0. Подробная операция выглядит следующим образом:

  1. загрузите версию 0.13.0 команды docker-machine. Нажмите для скачивания: 32-разрядная система или 64-разрядная система

  2. после завершения загрузки переименуйте и замените " docker-machine.exe "файл в " C:\Program каталог" Files\Docker\Docker\resources\bin". Лучше всего создать резервную копию исходного файла.


для тех, кто борется с этой проблемой в Windows, следуйте инструкциям здесь


вот решение

https://github.com/docker/machine/releases/download/v0.15.0/docker-machine-Windows-x86_64.exe

сохраните загруженный файл в существующий каталог, содержащий docker-machine.exe.

для моей системы это место для docker-machine.exe /c/Program Files/Docker/Docker/Resources/bin/docker-machine.exe

резервное копирование старого файла и заменить его файлы на новые.

cp docker-machine.exe docker-machine.014.exe

переименовать скачанный имя docker-machine.exe

mv docker-machine-Windows-x86_64.exe docker-machine.exe

Инструкции По Построению

  1. создать виртуальный коммутатор в Hyper-V manager с именем myswitch
  2. запросить Docker для создания виртуальной машины с именем myvm1

docker-machine create -d hyperv --hyperv-virtual-switch "myswitch" myvm1

результаты

docker-machine create -d hyperv --hyperv-virtual-switch "myswitch" myvm1

Running pre-create checks... (myvm1) Image cache directory does not exist, creating it at C:\Users\Trey Brister\.docker\machine\cache... (myvm1) No default Boot2Docker ISO found locally, downloading the latest release... (myvm1) Latest release for github.com/boot2docker/boot2docker is v18.05.0-ce (myvm1) Downloading C:\Users\Trey Brister\.docker\machine\cache\boot2docker.iso from https://github.com/boot2docker/boot2docker/releases/download/v18.05.0-ce/boot2docker.iso... (myvm1) 0%....10%....20%....30%....40%....50%....60%....70%....80%....90%....100% Creating machine... (myvm1) Copying C:\Users\Trey Brister\.docker\machine\cache\boot2docker.iso to C:\Users\Trey Brister\.docker\machine\machines\myvm1\boot2docker.iso... (myvm1) Creating SSH key... (myvm1) Creating VM... (myvm1) Using switch "myswitch" (myvm1) Creating VHD (myvm1) Starting VM... (myvm1) Waiting for host to start... Waiting for machine to be running, this may take a few minutes... Detecting operating system of created instance... Waiting for SSH to be available... Detecting the provisioner... Provisioning with boot2docker... Copying certs to the local machine directory... Copying certs to the remote machine... Setting Docker configuration on the remote daemon... Checking connection to Docker... Docker is up and running! To see how to connect your Docker Client to the Docker Engine running on this virtual machine, run: C:\Program Files\Docker\Docker\Resources\bin\docker-machine.exe env myvm1



(1), V0.15 исправлена эта проблема официально: Исправить проблему #4424-предварительно создать проверку:"модуль PowerShell Hyper-V недоступен" официальное вступление: https://github.com/docker/machine/pull/4426 Адрес для donload V0.15 https://github.com/docker/machine/releases

(2), Я проверил это, он отлично работает. Нет необходимости перезапускать docker Он вступает в силу немедленно после "докер-машины".exe " заменяется версией 0.15

(3), Резервное копирование оригинального-хорошая привычка