Sometimes I get the error message:
docker.exe: Error response from daemon: driver failed programming external connectivity on endpoint infallible_kapitsa (c7baca25c4e65da8aa6e592e7fb9ed81c0f55a3f7891e93c62a79819007f4e61): Error starting userland proxy: listen tcp 0.0.0.0:1234: bind: Der Zugriff auf einen Socket war aufgrund der Zugriffsrechte des Sockets unzulässig.
The reason is, that Docker cannot bind the requested port (in may case port 1234). Since a while Hyper-V seems to block some ports exclusively and you get this error:
docker run -p 1234:80 nginx docker: Error response from daemon: driver failed programming external connectivity on endpoint thirsty_feistel (d67c95aff29ae75aaae54a0a439fd5211ff76482009ef36e0caef9237d5337e9): Error starting userland proxy: listen tcp 0.0.0.0:1234: bind: Der Zugriff auf einen Socket war aufgrund der Zugriffsrechte des Sockets unzulässig.
But you can check the blocked ports in the CMD and get the range of the exclusive blocked ports:
netsh interface ipv4 show excludedportrange protocol=tcp
Start Port End Port
---------- --------
1026 1125
1226 1325
1326 1425
1426 1525
1526 1625
1733 1832
1933 2032
2033 2132
2180 2279
2280 2379
2382 2481
2482 2581
2683 2782
2783 2882
47001 47001
50000 50059 *
* - Administered port exclusion.
The easiest way is to switch to another port, if you start your docker container. If you need a special port and it is blocked, you maybe need this workaround: https://github.com/docker/for-win/issues/3171#issuecomment-459205576.
Schreibe einen Kommentar