【问题标题】:What is the IP address generated by the Windows container?Windows 容器生成的 IP 地址是什么?
【发布时间】:2018-06-23 03:45:26
【问题描述】:

当我在 Visual Studio 中创建一个 Docker 文件并启动它时;会发生以下情况:

如果它是 Windows 容器,那么当我运行应用程序(使用 docker-compose 作为启动项目)时,它会启动:http://172.22.15.37/(IP 地址每次都会更改)。

这个 IP 地址是什么?为什么我在使用 Windows 容器而不是 Linux 容器时可以浏览到它?我使用 ipconfig 找不到它。

我问的原因是因为 Linux 容器似乎不会发生这种情况,它直接浏览到本地端口:http://localhost:30500

当我在 Visual Studio 中创建 Linux 容器并运行以下命令时,我更加困惑:docker-inspect {container name}。在这里我可以找到容器的 IP 地址。当使用 windows 容器时,我可以在端口 80 上浏览到这个 IP 地址,但是当使用 Linux 容器时,我无法在端口 80 上浏览。

我已经用谷歌搜索了几个小时,但是我找不到答案。

【问题讨论】:

    标签: .net docker


    【解决方案1】:

    是的,这是真的。

    Windows 中容器 IP 地址的分配与 Linux 中容器 IP 地址的分配不同。 在 Docker for Windows 中,容器通过名为 DockerNAT 的 vEthernet 适配器进行通信。

    请在cmd 中运行ipconfig 尝试查找Ethernet adapter vEthernet (DockerNAT)

    从 18.03 版本开始,您可以使用 DNS 名称 host.docker.internal,它解析为主机使用的内部 IP 地址。

    我想,下面的讲座会对你有所帮助:

    https://github.com/docker/for-win/issues/221

    Docker ip for windows

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-09-30
      • 1970-01-01
      • 2011-06-04
      • 1970-01-01
      • 1970-01-01
      • 2023-03-17
      • 2019-02-21
      相关资源
      最近更新 更多