Asp.net

將 dotnet 核心部署到 Heroku

  • December 24, 2016

我正在嘗試將我的 dotnet 核心應用程序部署到 Heroku,但一直遇到此錯誤:

Restore failed
unknown keyword platform
!     Push rejected, failed to compile Web app app.
!     Push failed

當我dotnet run從 CLI 使用(我在 Mac 上)時,一切執行良好。如果有幫助,我已將Project.json以下內容包括在內:

{
 "dependencies": {
 "Microsoft.NETCore.App": {
 "version": "1.0.0",
 "type": "platform"
 },
 "Microsoft.AspNetCore.Mvc": "1.0.0",
 "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
 "Microsoft.AspNetCore.Server.Kestrel": "1.0.0",
 "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0",
 "Microsoft.Extensions.Configuration.FileExtensions": "1.0.0",
 "Microsoft.Extensions.Configuration.Json": "1.0.0",
 "Microsoft.Extensions.Configuration.CommandLine": "1.0.0",
 "Microsoft.Extensions.Logging": "1.0.0",
 "Microsoft.Extensions.Logging.Console": "1.0.0",
 "Microsoft.Extensions.Logging.Debug": "1.0.0",
 "Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0",
 "Microsoft.EntityFrameworkCore.Sqlite": "1.0.0",
 "Microsoft.EntityFrameworkCore.Design": {
   "version": "1.0.0-preview2-final",
   "type": "build" 
 }
},

"tools": {
 "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-     final",
 "Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final"
},

"frameworks": {
 "netcoreapp1.0": {
   "imports": [
     "dotnet5.6",
     "portable-net45+win8"
   ]
 }
},

"buildOptions": {
 "emitEntryPoint": true,
 "preserveCompilationContext": true
},

"runtimeOptions": {
 "configProperties": {
   "System.GC.Server": true
 }
},

"publishOptions": {
 "include": [
   "wwwroot",
   "Views",
   "Areas/**/Views",
   "appsettings.json",
   "web.config"
 ]
},

"tooling": {
 "defaultNamespace": "Tokens_monolith"
}
}

我終於成功地將它部署到 Heroku,一切都已啟動並執行。Tseng 在這方面提供了很大的幫助,所以謝謝你。我使用的 buildpack 針對的是舊版本的 .NET Core。Heroku 在這裡有一個針對 ASPNET5 的實驗性 buildpack:https ://github.com/heroku/dotnet-buildpack 。

截至本答案發佈時,此 buildpack 正在使用 Mono 進行執行時執行。有一個使用我使用的 .NET CLI 的拉取請求,它執行良好。它可以在這裡找到:https ://github.com/noliar/dotnet-buildpack 。希望他們盡快接受這個拉取請求。這是我使用的 buildpack。

希望這可以幫助某人。

引用自:https://stackoverflow.com/questions/38930806