【发布时间】:2019-05-15 16:41:00
【问题描述】:
我正在关注 https://app.pluralsight.com/library/courses/docker-web-development/table-of-contents,它使用较旧的 microsoft/aspnetcore-build 映像,但我运行的是 core 2.1,所以我使用的是 microsoft/dotnet:2.1-sdk 代替。
我正在运行的命令是:
docker run -it -p 8080:5001 -v ${pwd}:/app -w "/app" microsoft/dotnet:2.1-sdk
然后一旦进入 TTY,我会执行 dotnet 运行,它会给出以下输出:
使用 /app/Properties/launchSettings.json 中的启动设置...
信息: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[0]
用户个人资料可用。使用“/root/.aspnet/DataProtection-Keys” 作为密钥存储库;密钥不会被静态加密。
信息: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[58]
使用创建日期创建密钥 {5445e854-c1d9-4261-82f4-0fc3a7543e0a} 2018-12-14 10:41:13Z,激活日期 2018-12-14 10:41:13Z,和 到期日期 2019-03-14 10:41:13Z。
警告: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[35]
未配置 XML 加密器。钥匙 {5445e854-c1d9-4261-82f4-0fc3a7543e0a} 可能被持久化存储在 未加密的形式。
信息: Microsoft.AspNetCore.DataProtection.Repositories.FileSystemXmlRepository[39]
将数据写入文件 '/root/.aspnet/DataProtection-Keys/key-5445e854-c1d9-4261-82f4-0fc3a7543e0a.xml'。
警告:Microsoft.AspNetCore.Server.Kestrel[0]
无法在 IPv6 环回上绑定到 https://localhost:5001 interface: '无法分配请求的地址'.
警告:Microsoft.AspNetCore.Server.Kestrel[0]
无法在 IPv6 环回上绑定到 http://localhost:5000 interface: '无法分配请求的地址'.
托管环境:开发
内容根路径:/app
应用程序已启动。按 Ctrl+C 关闭。
然后,当我在主机上打开浏览器并导航到 http://localhost:8080 时,我收到“此页面无法正常工作”“本地主机未发送任何数据”“ERR_EMPTY_RESPONSE”
我也尝试了几个不同的端口组合,结果相同。
谁能发现我哪里出错了?或者有什么想法/建议?
【问题讨论】:
-
您是否尝试访问 https 端点:localhost:8080?
-
您正在映射
8080:5001这是https端口,您需要按照Michael的建议访问https。如果不起作用,您能否与我们分享重现问题的详细步骤?似乎与无法绑定到 5001 的错误有关。您是否启动了多个应用程序?尝试更改一个新端口,例如5002。 -
@Michael 是的,我做了同样的事情
-
@TaoZhou 我实际上同时映射到 http(5000) 和 http(5001)。 http和https都试过了,效果略有不同,这次得到ERR_CONNECTION_CLOSED。也在端口 8082 上尝试过
-
是否有任何演示和详细步骤可以重现您的问题?
标签: powershell docker asp.net-core .net-core .net-core-2.1