如何在CloudFoundry上启动.NET控制台应用程序?



我们正在尝试将应用程序中的某些Windows服务转换为控制台应用程序,以便我们可以将它们推送到CF上。 尝试使用示例 .net 控制台应用程序时,我收到以下错误:

2018-09-26T14:36:42.92+0530 [APP/PROC/WEB/0] ERR Error: no start command specified during staging or launch
2018-09-26T14:36:43.98+0530 [APP/PROC/WEB/0] OUT Exit status 1
2018-09-26T14:36:55.72+0530 [CELL/0] OUT Cell f80753e2-393c-411d-a662-6a49de7e44ce stopping instance a86af9f8-11f0-41ad-7f84-f518
2018-09-26T14:36:55.72+0530 [CELL/0] OUT Cell f80753e2-393c-411d-a662-6a49de7e44ce destroying container for instance a86af9f8-11f0-41ad-7f84-f518
2018-09-26T14:36:55.73+0530 [API/1] OUT Process has crashed with type: "web"
2018-09-26T14:36:55.77+0530 [API/1] OUT App instance exited with guid b9260f94-1097-4cf1-b181-a5ce1a2aa02e payload: {"instance"=>"a86af9f8-11f0-41ad-7f84-f518", "index"=>0, "cell_id"=>"f80753e2-393c-411d-a662-6a49de7e44ce", "reason"=>"CRASHED", "exit_description"=>"APP/PROC/WEB: Exited with status 1; process did not exit", "crash_count"=>2, "crash_timestamp"=>1537952815635562745, "version"=>"a53c5691-7d64-4030-82f0-91a85ead97b5"}*

我使用此命令将应用程序推送到 CF 上:

cf push CloudConsoleApp --health-check-type none -s windows2016 -b binary_buildpack --no-route

我能够推送 .Net 核心控制台应用程序并保持其在同一个 CF 实例上运行。 有人可以告诉我我在这里错过了什么吗?

你可以尝试几件事...

cf push CloudConsoleApp --health-check-type none -s windows2016 -b binary_buildpack --no-route

过去,您需要使用binary_buildpack。这不再是真的,尽管你仍然可以使用它。通常,应将hwc_buildpack与 Windows 上的 .NET 应用配合使用。

试试cf push CloudConsoleApp --health-check-type none -s windows2016 --no-route -b hwc_buildpack.

如果这不起作用,您仍然可以使用该binary_buildpack,但binary_buildpack不执行任何操作。它不安装任何东西,它不知道如何构建你的应用程序,它不知道如何运行你的应用程序。因此,如果hwc_buildpack不适合您,那么您还需要指定一个命令来启动您的应用程序。因此,请尝试如下操作:cf push CloudConsoleApp --health-check-type none -s windows2016 -b binary_buildpack --no-route -c 'my_app.exe'(或运行应用的任何命令(。

使用二进制构建包,您还需要推送已编译并准备运行的应用程序。二进制构建包什么都不做,甚至不编译你的应用程序,而hwc_buildpack知道更多,可以构建你的应用程序。

希望对您有所帮助!

我用这个语句做了一个poc并工作

cf push SimpleConsole --health-check-type none --no-route -s windows2016 -b hwc_buildpack -p .Release -c SimpleConsole.exe

发布路径包含 exe 文件,-c 参数必须具有 cf 运行时将运行的命令。 hwc.exe 是托管 Web Core API 的包装器 我添加了web.config作为application.config的克隆。 希望对您有所帮助。

相关内容

  • 没有找到相关文章

最新更新