无法将Node应用程序部署到Openshift

时间:2015-08-15 19:25:45

标签: javascript node.js openshift openshift-cartridge

我正在尝试使用命令行工具部署一个简单的 ExpressJS 应用 Openshift 。我在下面提供了调试跟踪:

>npm info ok 
Preparing build for deployment
Deployment id is 5e2abc99
Activating deployment
HAProxy already running
HAProxy instance is started
Starting NodeJS cartridge
Sat Aug 15 2015 15:17:47 GMT-0400 (EDT): Starting application 'xxxxx' ...
Waiting for application port (8080) become available ...
Application 'xxxxx' failed to start (port 8080 not available)

Git Post-Receive Result: failure
Activation status: failure
Activation failed for the following gears:
55cf8fc589f5cf9dbf00023c (Error activating gear: CLIENT_ERROR: Failed to execute: 'control start' for /var/lib/openshift/55cf8fc589f5cf9dbf00023c/nodejs
#<IO:0x00000001ec7290>
#<IO:0x00000001ec7218>
>)
Deployment completed with status: failure
postreceive failed

但是我的应用正在侦听端口8080:

app.listen(process.env.OPENSHIFT_NODEJS_PORT || 8080);

有人可以帮忙吗?

部署空应用程序似乎没有任何错误。

2 个答案:

答案 0 :(得分:9)

您是否检查过服务器上的日志?我遇到了类似的问题,因为我的脚本中存在语法错误。如果您通过SSH连接到您的应用程序并

tail app-root/logs/nodejs.log

您可以看到该应用的控制台输出。如果10不够或使用 less ,请使用-n [行数]查看更多日志,如果要滚动,请按shift + g查看从底部开始的文档通过这一切上下。

答案 1 :(得分:0)

尝试通过ssh登录您的openshift节点。我使用rhc tool。运行您的代码,您将看到问题所在。