Docker – HNS failed with error : The parameter is incorrect

dockerdocker-composewindows-container

I am making a docker containerized application using visual studio 2017.
When running docker through visual studio first, I got an error that "ERROR: client version 1.22 is too old".

This error was resolved by updating docker compose to version 2.1

Below link contains further instruction about this specific error

ERROR: client version 1.22 is too old

After this error was resolved ,On Building docker now I get "HNS failed with error : The parameter is incorrect."

From multiple github discussion I have found that it is a windows network error.

Is there a solution to this problem ?
Should I down grade docker version or install something else.

I am using windows container.
On running docker version
Client:
Version: 17.06.0-ce
API version: 1.30
Go version: go1.8.3
Git commit: 02c1d87
Built: Fri Jun 23 21:30:30 2017
OS/Arch: windows/amd64

Server:
Version: 17.06.0-ce
API version: 1.30 (minimum version 1.24)
Go version: go1.8.3
Git commit: 02c1d87
Built: Fri Jun 23 22:19:00 2017
OS/Arch: windows/amd64
Experimental: true

Edit:

If I switch to linux container this problem is solved.
But another issue occurs drive is not shared.
After sharing d: drive drive sharing issue still occurs.

How can I resolve linux container drive sharing issue.

I want to use windows container locally so that I can deploy this app on azure.

Best Answer

This is a known limitation. At present windows only supports one NAT network. Removing Netnat by invoke Remove-Netnat is not supported.

Run this in powerhell.

Get-NetNat | Remove-NetNat