【发布时间】:2015-09-30 06:41:07
【问题描述】:
我在咖啡中编写了一个节点 restify 服务器,但我似乎无法让它运行。
部署时出现以下错误:
等待应用程序端口 (8080) 可用...
之后我确实收到以下错误
应用程序“appname”启动失败(端口 8080 不可用)
如果咖啡脚本似乎是问题所在,是否有解决方法。我不想改回js。
我的服务器代码是:
restify = require 'restify'
Bunyan = require 'bunyan'
server = restify.createServer
name: 'APPNAME'
version: '0.0.1'
log: Bunyan.createLogger
name: 'api'
serializers:
req: ()->
return "bad"
# Usercontroller.access calls a function to process the request
server.post '/user/access', UserController.access
server = create.createServer()
server.listen server_port, ->
console.log "Http server listening on #{server_port}"
require('./document')(server.router.mounts, 'restify')
return
【问题讨论】:
-
我们能看到您用来启动 http 服务器的代码吗?
-
我相信您无法指定要在 openshift 上使用的端口。尝试使用
process.env.OPENSHIFT_NODEJS_PORT作为您的端口。 -
将端口和ip地址更改为以下但仍然显示上述错误。
server_port = process.env.OPENSHIFT_NODEJS_PORT || 8080 server_ip_address = process.env.OPENSHIFT_NODEJS_IP || '127.0.0.1' -
@dmlittle 我也尝试添加节点包 cloud-env 所以我可以
config = require 'cloud-env'并使用`server.listen config.PORT, config.IP, ()->' 但仍然得到同样的错误 -
您遇到相同错误的事实告诉我,
process.env.OPENSHIFT_NODEJS_PORT未定义,因此依赖于 8080。尝试console.log process.env检查 openshift 设置端口的位置
标签: linux node.js coffeescript openshift restify