我无法在bluemix上运行我的应用程序。我可以在当地运行得很好。
2015-12-14T21:14:04.751+0800[API/0]OUTApp instance exited with guid e498196a-4159-48a6-8e79-95c73d70e14a payload: {"cc_partition"=>"default", "droplet"=>"e498196a-4159-48a6-8e79-95c73d70e14a", "version"=>"0b284740-d9db-45b3-9e0c-0f226d37c0d6", "instance"=>"0827df95253a4c6b83042c1c2e646e36", "index"=>0, "reason"=>"CRASHED", "exit_status"=>-1, "exit_description"=>"failed to accept connections within health check timeout", "crash_timestamp"=>1450098844}
2015-12-14T21:15:14.412+0800[DEA/34]OUTStarting app instance (index 0) with guid e498196a-4159-48a6-8e79-95c73d70e14a
2015-12-14T21:15:26.746+0800[App/0]OUTDetected 1024 MB available memory, 512 MB limit per process (WEB_MEMORY)
2015-12-14T21:15:26.746+0800[App/0]OUTRecommending WEB_CONCURRENCY=2
2015-12-14T21:15:27.596+0800[App/0]OUT> gzcailanzi@1.2.0 start /home/vcap/app
2015-12-14T21:15:27.596+0800[App/0]OUT> node fpp.js
2015-12-14T21:16:26.834+0800[DEA/34]ERRInstance (index 0) failed to start accepting connections
2015-12-14T21:16:26.890+0800[API/10]OUTApp instance exited with guid e498196a-4159-48a6-8e79-95c73d70e14a payload: {"cc_partition"=>"default", "droplet"=>"e498196a-4159-48a6-8e79-95c73d70e14a", "version"=>"0b284740-d9db-45b3-9e0c-0f226d37c0d6", "instance"=>"78c0fb8f10284080b1c575ba0a336c5c", "index"=>0, "reason"=>"CRASHED", "exit_status"=>-1, "exit_description"=>"failed to accept connections within health check timeout", "crash_timestamp"=>1450098986}
2015-12-14T21:16:26.883+0800[App/0]ERR
您可以在http://my.oschina.net/wffger/blog/544409
中观看我的代码我添加了推荐的代码并再次推送。它不起作用。
15年12月15日 上午10:44 gzcailanzi 应用程序的一个实例崩溃:无法接受运行状况检查超时内的连接 退出状态:-1,CRASHED
答案 0 :(得分:2)
您似乎使用了错误的侦听端口。以下示例显示了Bluemix提供的入门代码中app.js文件的部分源代码:
var port = (process.env.VCAP_APP_PORT || 3000);
var host = (process.env.VCAP_APP_HOST || 'localhost');
当应用程序在Bluemix上运行时,VCAP_APP_HOST和VCAP_APP_PORT环境变量包含要侦听传入连接的主机和端口值。当应用程序在本地运行时,localhost用作主机,3000用作端口号。以这种方式编写,您可以在本地运行应用程序以进行测试,并且无需进行进一步更改即可在Bluemix上运行。
答案 1 :(得分:1)
您使用的是环境变量提供给您的端口吗?
您应该使用process.env.PORT来设置应用程序的侦听端口。
答案 2 :(得分:0)
这很容易。
cf push --no-route AppName