1
我创建了本地快速kitura应用程序,可以在本地正常工作。但是当我将它推到bluemix时,实例开始运行,然后失败。 Kitura未能部署到bluemix
我创建了本地快速kitura应用程序,可以在本地正常工作。但是当我将它推到bluemix时,实例开始运行,然后失败。 Kitura未能部署到bluemix
由于我看不到您的源代码,因此很难说清楚。但可能是因为您没有听Bluemix分配给您的端口。
do {
let port = try CloudFoundryEnv.getAppEnv().port
Log.verbose("Assigned port is \(port)")
Kitura.addHTTPServer(onPort: port, with: controller.router)
Kitura.run()
} catch CloudFoundryEnvError.InvalidValue {
Log.error("Oops... something went wrong. Server did not start!")
}
会发生什么事是,虽然它工作正常,以便时刻聆听8090(例如)在本地运行时,Bluemix将分配一个端口,你可以监听和端口转发器将流量从443到分配的端口。部署过程中的Bluemix将检查端口上是否有监听的内容,如果此健康检查失败,则会假定部署失败。
我实际上已经提到你的教程https://www.youtube.com/watch?v=xEStdmwFVBg来设置我的本地Kitura,因为我想从基础开始。我对Swift Kitura很新,所以你可以指导我实现CloudFoundryEnv的教程吗? –
哦,非常好,很高兴我的教程很有帮助。我认为这个软件包有很好的文档记录,如果你想看看这个,[Swift-cfenv](https://github.com/IBM-Swift/Swift-cfenv)。看看我们的一些例子,比如[TodoList](https://github.com/IBM-Swift/TodoList-CouchDB/),确保你有一个manifest.yml和一个Procfile。 –
添加CloudFoundryEnv修复了这个问题。非常感谢。 –