小编ben*_*vis的帖子

ASP.NET docker-compose 应用程序未在指定的端口上出现

我通过教程将 ASP.NET Core 中的 API WeatherForecast Web 模板进行了 docker 化:

  1. https://code.visualstudio.com/docs/containers/quickstart-aspnet-core
  2. https://code.visualstudio.com/docs/containers/docker-compose

我必须从这里开始,因为我没有使用此处的教程构建新图像: https: //docs.docker.com/compose/aspnet-mssql-compose/

“1”有效,这很棒。但是,“2”将无法在localhost:5000/WeatherForecast 所宣传的端口上工作,并且在对可用文档进行多次审查后,我在调试原因时遇到了一些麻烦。

我应该注意到,在从命令行创建模板化应用程序时,我确实选择了 --no-https 选项。

然后我使用 docker ps 来启动 PORTS 。该网络应用程序正在使用5000/tcp, 0.0.0.0:32779->80/tcp. 当我替换 时500032779我得到的是返回的 API 字符串!我知道我在 docker-compose 中遗漏了一些东西,需要额外的关注。谢谢你!

编辑:作为参考,下面的文件是由我的 VSCode 编辑器生成的。1. 我运行 dotnet new webapi --no-https 2. 然后我打开 VSCode“命令面板”并运行Docker: Add Dockerfiles to Workspace并选择“yes”以包含 docker-compose.yml 文件和 Linux。我也选择使用 port 5000。我使用 Fedora 30。 4. 我dotnet build从终端中的项目根目录运行。5. 如果我从docker命令运行并使端口显式,它将按照广告的方式工作,但如果我运行docker-compose -f <yml-file> up -d- --build,则不会。 …

c# asp.net docker .net-core docker-compose

6
推荐指数
1
解决办法
4848
查看次数

标签 统计

.net-core ×1

asp.net ×1

c# ×1

docker ×1

docker-compose ×1