Докер-машина Hyper-V Несколько сетевых адаптеров - PullRequest
0 голосов
/ 31 октября 2018

Я работаю на ноутбуке с Windows 10, а когда на работе подключаюсь к сети через Ethernet.

Когда я работаю из дома, я подключаюсь к сети через WiFi.

Моя проблема в том, что если я создаю докер-машину на работе, она не работает правильно дома, и наоборот.

Я создал виртуальные коммутаторы в Hyper-V для Wi-Fi и Ethernet.

Я создаю машины с помощью следующей команды:

docker-machine create -d hyperv --hyperv-virtual-switch <my-currently-ONLINE-virtual-switch> <my-docker-machine-name>

Я понимаю, что при создании я могу указать только один виртуальный коммутатор, и поэтому имеет смысл, что машины не работают при подключении к другому сетевому адаптеру.

Чтобы попытаться это исправить, я вручную добавил второй виртуальный коммутатор на компьютер в Hyper-V, используя следующие команды:

docker-machine stop <my-docker-machine-name>
Add-VMNetworkAdapter -VMName <my-docker-machine-name> -SwitchName <my-currently-OFFLINE-virtual-switch>
docker-machine start <my-docker-machine-name>

Это не сломало машины, они по-прежнему работают без проблем в сети, в которой они были созданы, но они по-прежнему не работают при подключении к той сети, в которой они изначально не создавались.

Когда машины не работают, Docker-machine ls отображает следующее

 NAME        ACTIVE   DRIVER   STATE     URL   SWARM   DOCKER    ERRORS
 manager-1   *        hyperv   Running                 Unknown   IP not found
 worker-1    *        hyperv   Running                 Unknown   IP not found
 worker-2    *        hyperv   Running                 Unknown   IP not found

IP не найден, похоже, ключ здесь, но я в растерянности относительно того, как дополнительно диагностировать / исправить проблему.

Я заметил, что в диспетчере Hyper-V все виртуальные машины находятся в состоянии работы, и я могу подключаться к виртуальным машинам через диспетчер Hyper-V.

Если бы кто-нибудь мог указать мне на исправление или какую-либо соответствующую документацию вокруг этого, это было бы очень признательно.

...