小编典典

本地主机无法正常工作的docker Windows 10

docker

我正在使用VS2017 Docker支持。VS为我创建了DockerFile,当我构建docker-compose文件时,它会创建容器并在172.xxx
IP地址上运行应用程序。但是我想在本地主机上运行我的应用程序。

我做了很多事情,但没有任何效果。跟随docker docs作为启动器并构建microsoft示例应用程序。第二个链接运行正常,但是尝试第一个链接方法时出现HTTP错误404。

任何帮助表示赞赏。


阅读 479

收藏
2020-06-17

共1个答案

小编典典

为了访问您指出不起作用的在Docker Docs上发布的示例,请执行以下步骤,

1-列出所有正在运行的Docker容器

docker ps -a

运行此命令后webserver,如果您正确遵循了docker
docs示例,则应该可以查看当前正在运行的所有Docker容器,并且应该看到其中列出名称的容器。

2-获取webserver容器运行所在的IP地址。为此,请运行以下命令。

 docker inspect -f "{{ .NetworkSettings.Networks.nat.IPAddress }}" webserver

现在,您应该获得webserver容器正在运行的IP地址,希望您熟悉此步骤,因为该步骤甚至可以在问题附带的Microsoft示例应用示例中使用。

运行上述命令后,访问获得的IP地址,您应该会看到所需的输出。

回答您的第一个问题(在Windows的docker中使用localhost访问docker容器)时,由于默认NAT网络堆栈的限制,在Windows主机中,您无法使用localhost访问容器。可以通过访问此
链接
获得有关此问题的更详细的说明。似乎docker文档尚未更新,但此问题仅在Windows主机中存在。

还报告了一个问题-单击此 链接 可以看到该问题。

希望这可以帮助你。

编辑

此问题的解决方案似乎将在将来的Windows版本中提供。但是该版本发布后,Windows主机中便提供了此限制。点击此链接->
https://github.com/MicrosoftDocs/Virtualization-
Documentation/issues/181

2020-06-17