Tente remover a rede NAT usando o seguinte:
Get-NetNat | Remove-NetNat
Você também pode tentar reiniciar o HNS e o docker
Restart-Service hns
Restart-Service docker
Desde que atualizei o Docker no meu computador para o beta27, não consegui executar contêineres do Windows usando a rede padrão. Eu recebo a seguinte mensagem:
docker: Error response from daemon: container xxx encountered an error during Start failed in Win32: The system cannot find the path specified. (0x3): Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type.
Eu desinstalei / removi tudo (Docker para Windows, Hyper-V, o recurso Containers e arquivos restantes em C: \ ProgramData \ Docker) e, em seguida, reinstalei tudo, mas o problema persistiu.
Percebi que o adaptador nat
não estava mais presente no Hyper-V, mas o adaptador DockerNat
era.
Este artigo fornece um script para redefinir os componentes de rede, mas não consigo remova a rede de contêineres.
PS C:\WINDOWS\system32> Get-ContainerNetwork
Name Id Subnets Mode SourceMac DNSServers DNSSuffix
---- -- ------- ---- --------- ---------- ---------
nat 12706897-fc71-41fc-9046-a7be0d01727e {172.16.0.0/12} NAT
PS C:\WINDOWS\system32> Get-ContainerNetwork | Remove-ContainerNetwork
Confirm
Remove-ContainerNetwork will remove the container network "".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"):
Remove-ContainerNetwork : Unspecified error
At line:1 char:24
+ Get-ContainerNetwork | Remove-ContainerNetwork
+ ~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [Remove-ContainerNetwork], VirtualizationException
+ FullyQualifiedErrorId : OperationFailed,Microsoft.Containers.PowerShell.Cmdlets.RemoveContainerNetwork
PS C:\WINDOWS\system32> Remove-ContainerNetwork -Name nat
Confirm
Remove-ContainerNetwork will remove the container network "nat".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"):
Remove-ContainerNetwork : Unspecified error
At line:1 char:1
+ Remove-ContainerNetwork -Name nat
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [Remove-ContainerNetwork], VirtualizationException
+ FullyQualifiedErrorId : OperationFailed,Microsoft.Containers.PowerShell.Cmdlets.RemoveContainerNetwork
PS C:\WINDOWS\system32>
Existe uma entrada de registro que eu possa excluir para remover a rede, já que não é possível removê-la pelo PowerShell?
Tente remover a rede NAT usando o seguinte:
Get-NetNat | Remove-NetNat
Você também pode tentar reiniciar o HNS e o docker
Restart-Service hns
Restart-Service docker