【问题标题】:issue with docker container with .net core 3.1 web app带有 .net core 3.1 Web 应用程序的 docker 容器问题
【发布时间】:2020-07-25 06:40:49
【问题描述】:

我用 .net core 3.1 创建了一个 MVC 项目并启用了 docker 支持,所以我在项目中有 docker 文件。

我正在使用适用于 Windows 的 Windows 10 Enterprise 和 Docker 桌面社区客户端,它作为 Windows 容器运行。

当我从 Visual Studio 2019 编译项目时,它会创建映像,然后创建容器,并通过运行:“docker container ls”我看到它正在运行。

我必须检查容器以查看容器的 IP,并能够从来自容器的 URL 运行页面。所以有了容器的 IP (172.24.121.233),我把它放在浏览器中:http://172.24.121.233:80,然后我看到了我的网页。但问题是在我停止从 Visual Studio 运行 MVC 应用程序后,此 URL 不再起作用?

我期待它独立运行?有什么帮助可以解决这个问题并使容器独立于 Visual Studio 运行?

谢谢

【问题讨论】:

标签: docker asp.net-core .net-core asp.net-core-mvc dockerfile


【解决方案1】:

当然,你可以再次运行 docker 容器:首先,运行 docker ps -a(或者如果你根本不运行容器,docker images -a),找到你的容器(或镜像)并通过命令docker run <IMAGE_NAME>

两个提示:

  • 如果你想在运行后从容器中分离,使用-d开关
  • 如果你想在不找到容器 IP 的情况下访问镜像的 80 端口,请使用 -p 180:80 并使用主机的 180 端口

【讨论】:

  • 谢谢。无论如何它都不起作用->“docker run -d -p 80:80 --name webappctr2 sampleappimg”。除此之外,我ping容器的IP并超时,有什么想法吗?为什么这么难?。容器说启动并运行。
  • 也按照您的建议进行了尝试:docker run -d -p 180:80 --name webappctr3 sampleappimg,我看到了容器,但是在检查了容器以获取 IP 之后,我 ping 了它,它没有响应。
  • 为什么需要IP?如果您使用-p 180:80 映射端口,您可以在http://localhost:180 中看到您的应用程序
  • 哇,太棒了,成功了!多谢!所以这很好用:localhost:180
猜你喜欢
  • 2020-10-10
  • 1970-01-01
  • 2021-09-10
  • 2020-04-27
  • 2020-08-19
  • 1970-01-01
  • 2021-08-23
  • 1970-01-01
  • 2019-09-09
相关资源
最近更新 更多