2017-02-22 47 views
2

我正试图通过VSTS中的发布管理器来获取Azure Web应用程序部署。我知道我们迁移到的MSBuild为核心DOTNET 1.1之前,有这个在project.json: 用新的MSBuild为dotnet核心发布到IIS?

"tools": { 
 
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.1.0-preview4-final" 
 
    }, 
 

 
    "scripts": { 
 
    "postpublish": "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" 
 
    }

目前我使用类似: DOTNET发布--framework netcoreapp1.1 -c'发布” -o 'C:\输出'

产生的web.config中有:

<aspNetCore processPath="dotnet" arugments=".\MyApp.Web.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" forwardWindowsAuthToken="false" /> 

然而,当这是通过捻部署到Azure的Web应用程序,我收到一个“HTTP 502.5 - 临cess失败“异常从IIS。我认为这是因为IIS不理解这个processPath。本地我只通过Kestrel运行,因为我有其他的开发人员不能在Windows机器上工作。

我是否需要针对部署的构建目标完整的.NET Framework,或者是否有我缺少的东西来允许在Azure Web Apps中运行IIS来托管dotnet核心1.1应用程序?

回答

1

确保您使用的是“Microsoft.NET.Sdk.Web”。

<Project Sdk="Microsoft.NET.Sdk.Web"> 
    <PropertyGroup> 
     <TargetFramework>netcoreapp1.1</TargetFramework> 
    </PropertyGroup> 
</Project> 

这应该会自动处理IIS发布步骤。如果您遇到错误,请尝试在https://github.com/aspnet/websdk上打开问题。

+0

我目前在我的csproj中已经有了这个目标。我想我的问题归结为用于web.config的magic publish-iis。我会更新这个问题。 – Matthew

+0

@Matthew在https://github.com/aspnet/websdk上打开一个问题。它应该与Kudu一起工作。 – natemcmaster

+0

我已经打开了一个新问题 - https://github.com/aspnet/websdk/issues/140我不知道在websdk或msbuild团队(https:// github)上发布更有意义。 com/Microsoft/msbuild)甚至可能是VSTS团队(https://github.com/Microsoft/vsts-tasks)? – Matthew