访问Docker容器中的页面时找不到资源错误

时间:2019-02-07 06:42:20

标签: docker containers

我在具有Docker支持(Windows)的Visual Studio中创建了一个asp.net Webform项目。当我使用Visual Studio运行项目时,页面显示如下 enter image description here

Visual Studio创建一个我使用命令看到的docker映像

docker images

请参见下图(webapplication3) enter image description here

现在我通过命令运行Image(webapplication3)的另一个实例

Docker run webapplication3:dev

我可以看到容器正在运行

Docker ps

请参见下图 enter image description here

但是现在,当我使用ip http://172.17.183.118/PageA.aspx访问此新运行的容器时,
它没有出现,请参见下图(我已经从docker inspect命令中获取了IP 172.17.183.118,所以它是正确的。 enter image description here

有人可以告诉我为什么我无法查看该页面吗?为什么显示“找不到资源”错误?

1 个答案:

答案 0 :(得分:1)

默认情况下,当您运行Docker容器时,该容器将使用内部IP地址运行,并且暴露端口映射本地计算机端口,并且IP地址将通过与本地计算机相关联的Docker桥接器出站到Internet。网络接口。

当您访问本地计算机内的容器时,只需访问显示端口的本地主机即可。在您的问题中,您需要访问地址http://localhost:62774/PageA.aspx。如果要从Internet访问容器,则应使用端口访问本地计算机的IP地址。对您来说,这意味着地址http://your-local-machine-public-ip:62774/PageA.aspx

您可以从Docker Network获取更多详细信息。另外,我建议您最好使用计划的特殊端口来运行容器,就像docker run -d -p nodePort:containerPort --name containerName yourImage一样。