OpenShift使用不带机架的Ruby

OpenShift使用不带机架的Ruby,ruby,server,openshift,Ruby,Server,Openshift,我正在OpenShift上做一个API项目,它有一个Node.js服务器和Ruby后端。我已经为Node.js设置了一个部署来处理API请求,并为MongoDB部署来存储数据,但是Ruby后端遇到了问题 Ruby后端负责每隔一段时间更新数据库,因此必须定期或持续运行。这就是我的发现,问题是OpenShift似乎希望我使用Rack来启动web服务器,但这不是我想要的。我只想让Ruby作为一个守护进程运行,每隔,比如说,15分钟刷新一次web来更新API 如何在不创建Web服务器的情况下使用Ruby

我正在OpenShift上做一个API项目,它有一个Node.js服务器和Ruby后端。我已经为Node.js设置了一个部署来处理API请求,并为MongoDB部署来存储数据,但是Ruby后端遇到了问题

Ruby后端负责每隔一段时间更新数据库,因此必须定期或持续运行。这就是我的发现,问题是OpenShift似乎希望我使用Rack来启动web服务器,但这不是我想要的。我只想让Ruby作为一个守护进程运行,每隔,比如说,15分钟刷新一次web来更新API


如何在不创建Web服务器的情况下使用Ruby?也就是说,绕过没有安装Rack gem的错误?

您应该添加一个
.s2i/bin/run
脚本,将Ruby文件作为守护进程调用。来源:除了@WillGordon所说的之外,确保override executable
.s2i/bin/run
脚本中的最后一个命令使用
exec
来运行该命令。另请参阅《谢谢》中有关重写
run
脚本的详细信息!这很有效(在我还编写了一个汇编脚本将gems安装到正确的位置之后)。但是,exec会抑制输出,并且不会将守护进程的输出写入日志。有办法解决这个问题吗?