Issue with Wifi Adapter with Docker Windows (Native, HYPER-V)
As no one has answered yet, I will try to help, but warn that I do not use Docker and do not have your environment. This is all theory.
My theory is that the problem you are running into is with Windows 10 rather than with Docker or Hyper-V. I see a connection between the fact that on the one hand one cannot have both Ethernet and WiFi connections enabled at the same time, and on the other hand one cannot do NAT with WiFi. Therefore your enabling of NAT might cause the enabling of an Ethernet adapter which disables the wireless adapter.
If I am right, there might be two solutions to the problem :
- Connect the computer via wired wired rather than wireless
- Create a virtual Ethernet adapter around the wireless adapter:
- Open Hyper-V manager
- Click on the Virtual Network Manager and create an Internal Virtual Network by selecting Internal and clicking Add.
- Give a meaningful Name
- Apply and OK
- Now a Virtual Network has been created which can be associated with 1 or more virtual machines.
- On the host machine, in the Network and Sharing Center click on Change Adapter Settings
- Select your WiFi Adapter and the Internal Virtual Network you created.
- Right click and select Bridge Network and the bridge is created.
- Use the Internal Virtual Network that you created initially for Docker NAT.
If the above does not work for some reason, a software that might be able to help is Connectify Hotspot (shareware/paid), which via its Virtual Router can share WiFi as Ethernet.
Another which might do the job is SoftEther VPN Open Source, which however requires connecting to a VPN in order to use its Virtual Network Adapter.
After trying all types of remedies advised here and there, and with none of them fixing the issue, I eventually found that in my case it was 3rd party software (PulseSecure) that was disabling WiFi whenever Hyper-V adapter was active. So, if you have this software installed as well there is a good chance that it is causing the problem. You can disable "Pulse Secure Service" service to see if that's indeed the case, and if that solves your issue.