1

我正在尝试在cloudControl上设置 Node.js 部署,但是我的部署失败了,我不知道为什么。日志提示我这个错误:

1/15/15 4:15 PM  Info Failed to start container

但是,我的 Procfile 似乎还不错:

web: node server.js

关于容器无法启动的原因,我没有得到进一步的解释或堆栈跟踪。我要部署的确切代码在 github 上:https ://github.com/dunnkers/roosters-api

我正在使用 mongoose 连接到外部 MongoSoup 数据库。但是,我没有为此使用插件。这可能是由于部署失败的原因吗?

感谢所有想法!

4

2 回答 2

1

您必须在 PORT 环境变量中提供的端口上启动服务器。查看存储库表明您正在寻找 OPENSHIFT_NODEJS_PORT。

还可以查看错误日志 ( https://www.cloudcontrol.com/dev-center/Platform%20Documentation#logging ) 可以为您提供更多信息。

无需使用提供的插件,您可以使用您喜欢的任何后端。通过提供必要的凭据作为环境变量和单点支持,选择其中一个插件可以简化集成过程。但这完全取决于你

于 2015-01-15T15:42:54.647 回答
1

很高兴找到 TooAngel - 我立即更改了它。然而,服务器端口并不是唯一的问题。

我使用环境变量来存储我的 MongoDB 连接 url,使用config addon : cctrlapp APP_NAME/DEP_NAME config.add MONGODB_URL="X",然后我尝试在我的代码中使用 : 访问它creds.MONGODB_URL。(见开发中心

然而这并没有奏效。经过一些轻微的调试后,我发现实际上访问自定义配置的正确方法是:creds.CONFIG.CONFIG_VARS.MONGODB_URL

修复此问题后,一切都正确部署!

1/17/15 1:13 AM Deploy ***** Deployed *****

毕竟,事实证明我没有收到正确的错误消息,因为我没有正确捕获它。然而,配置访问混乱是可以在 cloudControl 文档中改进的。我会看看我是否可以为此提出问题以帮助其他人处理这个问题。

于 2015-01-17T00:37:11.427 回答