【发布时间】:2020-05-06 14:15:31
【问题描述】:
这里是 Docker 初学者。
我创建了一个简单的 asp.net web 应用程序,它在运行时会显示应用程序的默认页面。
使用 docker build 命令,我从中创建一个映像,并进一步使用 docker run 命令docker run -d --name {containername} -p 81:8080 {imageid}。现在,当我尝试通过浏览器上的本地主机(即http://localhost:81/)访问容器映像时,我收到“无法访问站点”错误。我希望通过暴露的 81 端口打开相同的默认应用程序页面。
我的 docker 客户端是 windows/amd,docker 服务器是 linux/amd。我使用的docker版本是19.03.08
使用 docker inspect 我可以看到
"PortBindings": {
"8080/tcp": [
{
"HostIp": "",
"HostPort": "81"
}
]
},
和 "IPAddress": "" 在网络设置中。
如果有任何帮助或建议,我将不胜感激。
【问题讨论】:
-
http://127.0.0.1:81/工作吗? -
@hmm 不,同样的问题。
-
您的应用程序在哪个端口上运行,我认为不是 8080?
-
您是在 Windows 上使用 Docker Toolbox,还是使用 Docker Desktop 应用程序?当您启动应用程序时,它是否会打印“正在侦听...”消息?
-
@Adiii 和 David Maze:在对 Docker 文件进行一些更改后,现在我可以让容器处于运行状态。我可以在 docker 桌面上看到相同的内容(容器处于运行状态)。此外,端口 8080 已暴露(请参阅链接中的图片)。尽管现在我收到“页面无法正常工作。本地主机没有发送任何数据”错误。 [链接]imgur.com/a/JY74TAL
标签: docker docker-compose dockerfile docker-run docker-command