提问人:Neo 提问时间:7/2/2021 更新时间:7/2/2021 访问量:70
运行 Net5.0 Web API 项目时找不到页面
page not found while running net5.0 web api project
问:
我有一个使用 VS 2019 模板制作的 net5.0 Web API 项目,该项目使用 swagger 列出端点。 我还为项目添加了容器支持。当我从 Visual Studio 运行容器时,一切都很好,它显示了 swagger 终结点。同样,在从 Visual Studio 执行 iis express 或作为 kestrel 项目时,它可以正常工作。
问题是当我使用以下命令构建dockerfile时:
docker build -t appnet5 -f .\ProjectName\Dockerfile .
然后运行它:
docker run -d -p 4568:80 --name myapp appnet5
尝试访问端点时出现错误,提示:“找不到此本地主机页面”。
我尝试访问 swagger 端点以及 api 端点。两者都给出相同的响应。
然后我使用以下命令发布了代码:
dotnet publish -c Release
然后,我从项目名称\bin\Release\net5.0\publish文件夹中运行了.exe应用程序。 即使应用程序运行,我仍然收到相同的错误。
以下是 launchsettings 的副本:
{
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:63516",
"sslPort": 0
}
},
"$schema": "http://json.schemastore.org/launchsettings.json",
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"launchUrl": "swagger",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"ProjectName": {
"commandName": "Project",
"launchBrowser": true,
"launchUrl": "swagger",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
},
"dotnetRunMessages": "true",
"applicationUrl": "http://localhost:5000"
},
"Docker": {
"commandName": "Docker",
"launchBrowser": true,
"launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}/swagger",
"publishAllPorts": true,
"applicationUrl": "http://0.0.0.0:80"
}
}
}
我无法访问端点并收到此错误的原因可能是什么? 我处理问题错了吗? 谢谢
答: 暂无答案
评论
docker build -t appnet5 .