Wil*_*llM 5 windows networking containers docker
我在 Windows Server 2016 主机上运行 Windows docker 容器,运行默认配置。
使用以下命令运行 docker 容器时:
docker run -it microsoft/windowsservercore powershell
当我运行命令时:
ping <hostIPAddress>
它只是说请求超时。我已经检查过我可以 ping 8.8.8.8 和 google.com 等......甚至同一子网上的其他机器。我唯一无法ping通的是主机。
我已将“--dns”添加到“docker run”命令中,但这仅允许我通过主机名而不是 IP ping 主机。
有没有其他人看到这个问题并有解决方案?
我找到了一个解决方法(我不愿意称其为解决方案):
Windows 容器网络驱动程序:创建“透明”网络:
docker network create -d transparent trans
Run Code Online (Sandbox Code Playgroud)
将容器附加到该网络
docker run --network=trans ...
Run Code Online (Sandbox Code Playgroud)
重要提示:请注意,使用此网络,您的容器需要从主机子网获取 IP 地址,并直接暴露给它。
根据https://github.com/Microsoft/Virtualization-Documentation/issues/253#issuecomment-217975932 (JMesser81):
这是我们的 Windows NAT 实现 (WinNAT) 中的一个已知限制,您无法直接从容器 (NAT) 主机访问静态端口映射中的外部端口。
| 归档时间: |
|
| 查看次数: |
7204 次 |
| 最近记录: |