首页 文章

Docker和ASP.NET Core 2.1预览1

提问于
浏览
4

我已经从here安装了ASP.NET Core 2.1预览1和Visual Studio的最新预览版 .

然后我按照以下步骤操作:文件>新建项目> ASP.NET核心Web应用程序>选择 API ,检查 Enable Docker Support (Os: Linux)No Authentication .

这很好地生成了项目模板,以及带有docker撰写文件的Docker项目 . 这样可以很好地构建,并提取所有需要的图像 . 但是,当我尝试使用Docker从Visual Studio中运行它时,它似乎不起作用 .

在日志中,我看到以下内容:

内容根路径:/ app现在正在侦听:http:// [::]:80 ...请求启动HTTP / 1.1 GET http:// localhost:32778 / Microsoft.AspNetCore.Hosting.Internal.WebHost:信息:请求启动HTTP / 1.1 GET http:// localhost:32778 /

现在,当我尝试对http://localhost:32778/api/values(使用Postman)进行GET时,没有看到任何响应:

无法获得任何响应连接到http:// localhost:32778 / api / values时出错 .

但! Docker日志显示正在进行请求:

Microsoft.AspNetCore.Hosting.Internal.WebHost:信息:请求启动HTTP / 1.1 GET http:// localhost:32778 / api / values [40m [32minfo [39m [22m [49m:Microsoft.AspNetCore.Hosting.Internal.WebHost] [1]请求启动HTTP / 1.1 GET http:// localhost:32778 / api / values [40m [32minfo [39m [22m [49m:Microsoft.AspNetCore.Hosting.Internal.WebHost [2]请求在14.4873ms完成307 Microsoft .AspNetCore.Hosting.Internal.WebHost:信息:请求在14.4873ms 307完成

我在这里错过了什么?如果我使用IIS Express运行默认项目,一切都按预期工作 .

编辑:我刚刚在ASP.NET Core 2.0上测试过,一切正常 .

2 回答

  • 7

    正如@andrewbadera指出的那样,存储库发生了变化:

    SDK

    旧: microsoft/aspnetcore-build:2.0

    新: microsoft/dotnet:2.1-sdk

    ASP NET

    旧: microsoft/aspnetcore:2.0

    新: microsoft/dotnet:2.1-aspnetcore-runtime

    我不知道为什么视觉工作室的模板已经没有使用它,但很快他们可能会解决这个问题 .

    Visual Studio模板正在生成:

    SDK => microsoft/aspnetcore:2.1

    ASP NET => microsoft/aspnetcore-build:2.1

  • 1

    我也在使用Docker上的netcoreapp2.1 . 您确定已成功拉下泊坞窗图像吗?因为当我创建一个新项目时,创建的Dockerfile具有:

    FROM microsoft/aspnetcore:2.1 AS base
    //...
    //...
    FROM microsoft/aspnetcore-build:2.1 AS build
    

    从我在microsoft docker repo中看到的,这些图像只是 do not exist (!) .

    VS中的输出显示:

    ========== Pulling Images ==========
    Pulling missing Docker images. To cancel this download, close the command prompt window. To disable image auto-pull, see Tools > Options > Container Tools.
    docker pull microsoft/aspnetcore:2.1
    docker pull failed
    

    我找到的最接近的图像是:

    microsoft/aspnetcore:2.1.0-preview1
    microsoft/aspnetcore-build:2.1.300-preview1
    

    但应用程序工作,但还有另一个问题:在VS中调试时, debugger doesn't hit any breakpoints (因为PDB符号未加载,我不知道为什么会这样) .

    我刚刚描述的所有内容都适用于创建新的ASP.NET Core 2.0 项目 .

相关问题