Tag: openshift

在同一个应用程序中打开Python和Nodejs

我正在构build一个Django项目,在Openshift中,我有一个Python 2.7和Mysql 5.5盒式磁带的应用程序。 我也想用bower来pipe理客户端软件包,但是bower具有npm和Node的依赖关系。 在Openshift中,我安装了npm,但是我没有Node,所以我不能安装bower。 我如何在openshift中安装Nodejs? 注意:我在openshift中没有sudo权限。 谢谢。

400,502,503错误与Websockets

我正在使用Socket.io,Node.js和Openshift进行多人游戏。 它工作了一段时间,但我做了一些小的改变,现在与我改变的东西无关。 当第二个玩家试图join游戏时,它会将所有人都引导出来,对于任何其他进入该网站的人显示503错误。 对于第二个玩家,我得到了很多控制台错误,包括 WebSocket connection to 'ws://avalon-evao.rhcloud.com/socket.io/?EIO=3&transport=websocket&sid=d5smykffy4EWHxgIAAAC' failed: Error during WebSocket handshake: Unexpected response code: 400 http://avalon-evao.rhcloud.com/socket.io/?EIO=3&transport=polling&t=1421020862973-4&sid=d5smykffy4EWHxgIAAAC Failed to load resource: the server responded with a status of 502 (Bad Gateway) http://avalon-evao.rhcloud.com/socket.io/?EIO=3&transport=polling&t=1421020865831-6&sid=d5smykffy4EWHxgIAAAC Failed to load resource: the server responded with a status of 503 (Service Unavailable) socket.io-1.2.0.js:2 WebSocket connection to 'ws://avalon-evao.rhcloud.com/socket.io/?EIO=3&transport=websocket&sid=c-fwcJaMkp_9rl5CAAAA' failed: WebSocket is […]

Access-Control-Allow-Origin使用Node.js,express和socket.io在OpenShift上

正如标题所示,我无法远程访问OpenShift上托pipe的node.js实例。 我在浏览器的控制台中收到的错误如下所示: XMLHttpRequest无法加载http://app-domain.rhcloud.com:8000/socket.io/?EIO=3&transport=polling&t=1430117973290-2 。 请求的资源上没有“Access-Control-Allow-Origin”标题。 Origin'http:// localhost:8383 '因此不被允许访问。 (08:59:33:579 | error,javascript)at public_html / index.html 我意识到,标题需要设置为允许跨域请求,我已经尝试了几种不同的做法,在我的服务器代码。 目前服务器和客户端代码如下所示: 服务器: #!/bin/env node var test = { init: function() { test.protocol = require('http'); test.express = require('express'); test.fs = require('fs'); test.socket = require('socket.io'); test.key(); test.setup(); test.cache(); test.handlers(); test.server(); test.start(); }, key: function() { test.cache_get = function(key) { return test.zcache[key]; }; […]

在socket.io脚本中出现奇怪exceptionETIMEDOUT的Openshift redis盒式磁带

我有一个运行的socket.io节点脚本作为聊天服务器。 我有它在本地服务器上运行好,并从此尝试将其移到openshift。 我用下面的墨盒来使它工作 – https://github.com/smarterclayton/openshift-redis-cart/issues 在运行本地版本的服务器时,在连接到openshift的redis时,我在运行脚本后127秒内出现奇怪的超时。 events.js:72 throw er; // Unhandled 'error' event ^ Error: Redis connection to <server> failed – connect ETIMEDOUT at RedisClient.on_error (/path/node_modules/redis/index.js:196:24) at Socket.<anonymous> (/path/node_modules/redis/index.js:106:14) at Socket.emit (events.js:95:17) at net.js:441:14 at process._tickCallback (node.js:442:13) 我曾经看过一个events.js:72,但通常当我尝试运行一个已经在该端口上运行的节点脚本时。 很确定的脚本本身是好的,因为当我换出我的本地的Redis服务器,它会坐在那里几天,并正常工作。 所以我的问题是:为什么我的socket.io脚本在redis在openshift上托pipe的127秒之后自行终止?

Mongodb和Loopback,同时部署在openshift上

我正在将我的第一个环回应用程序部署到Openshift。 但它不工作。 我已经创build了一个datasources.local.js文件。 并做了一些改变。 datasources.local.js module.exports = { myDB: { connector: 'loopback-connector-mongodb', host: 'mongodb://$OPENSHIFT_MONGODB_DB_HOST', port: '$OPENSHIFT_MONGODB_DB_PORT', database: 'even3co', username: 'admin', password: 'ZWQbMQpvMz-F' } }; 模型config.json { "_meta": { "sources": [ "loopback/common/models", "loopback/server/models", "../common/models", "./models" ], "mixins": [ "loopback/common/mixins", "loopback/server/mixins", "../common/mixins", "./mixins" ] }, "User": { "dataSource": "db" }, "AccessToken": { "dataSource": "db", "public": false }, […]

OpenShift + HAProxy会话太多

我正在开发一个使用Kraken.js的应用程序,并pipe理我决定使用的会话:connect-mongo。 我有这样的设置: 'use strict'; var session = require('express-session'); var MongoStore = require('connect-mongo')(session); module.exports = function SessionLib(opts) { return session({ secret: opts.secret, resave: opts.resave, saveUninitialized: opts.saveUninitialized, store: new MongoStore({ url: opts.url, ttl: opts.ttl }) }); }; 我在OpenShift中部署了自动缩放的应用程序,OpenShift使用HAProxy进行自动缩放,但是这导致了我在MongoDB中产生了太多会话的错误(上个周末约有25万个)。 有没有保持HAProxy会话的可能性?

将自定义节点JS版本添加到openshift不适用于我的应用程序

我写了一个需要Node.js> = 4.2.6的应用程序我使用OpenShift服务,默认的Node.Js版本是0.10。 安装这个https://github.com/ryanj/nodejs-custom-version-openshift应该可以解决这个问题。 所以我按照说明创build了一个新的应用程序,使用: rhc app create nodeapp nodejs –from-code = git://github.com/ryanj/nodejs-custom-version-openshift.git 到现在为止还挺好。 下一步 – 将我的项目复制到克隆的git存储库。 这里是我不确定我的方法是否正确(新的Node js)。 由于克隆的git已经有一个JSON包,而且因为我的应用程序在其根目录中有自己的JSON包,所以我使用我的依赖关系丰富了与nodejs-custom-version-openshift.git一起提供的JSON包,并将引擎设置为4.2。 6。 主要设置为server.js。 要运行我的应用程序,我使用“var variable = require('./ myapp-master / test / test');” 作为我的server.js中的最后一行。 我复制我的应用程序的内容到克隆的存储库(包括节点模块等),小心不要覆盖任何现有的configuration文件,如JSON包,然后我使用git push。 节点版本根据日志(在构build时)正确安装,servers.js被执行并调用我的test.js. 我可以在应用程序日志(app-root / logs)中看到test.js抛出一个指定节点js版本不是> = 4.2.6的特定错误。 当我用PUTTYlogin和写节点-v,我得到4.2.6。 当我导航到我的test.js并用节点test.js手动启动它时,它运行正常。 我究竟做错了什么? 我怀疑我没有正确处理JSON包(或者我的方法从server.js启动我的应用程序是有缺陷的)。 任何帮助是极大的赞赏! 感谢您的时间。

Node.js:在OpenShift上提供静态资源问题

在OpenShift上,我创build了基本的node0.10盒式磁带,并有node_modules文件夹,我试图在我的index.html获取某些文件,但它只是给了我404错误。 index.html导入看起来如下: <script src="es6-shim/es6-shim.min.js"></script> <script src="systemjs/dist/system-polyfills.js"></script> <script src="angular2/es6/dev/src/testing/shims_for_IE.js"></script> <script src="angular2/bundles/angular2-polyfills.js"></script> <script src="systemjs/dist/system.src.js"></script> <script src="rxjs/bundles/Rx.js"></script> <script src="angular2/bundles/angular2.dev.js"></script> 然后我有我需要app.js server.js : … var app = express(); require('./app.js').setApp(app); … app.js看起来像这样: var express = require('express'); var app = express(); var path = require("path"); exports.setApp = function (app) { app.use(express.compress()); var oneDay = 86400000; app.use(express.static(path.join(__dirname + '/node_modules'), { maxAge: oneDay […]

在openShift节点版本上meteor

meteor(v0.6.6.3)在openShift上,定制openShift nodeJS为0.10.21,mongoDB 2.2 我试图得到一个运行在openShift上的meteor应用程序。 我已经将nodeJS从openShift默认值0.10.5升级到了nodeJS 0.10.21,因为meteor最低需要这个nodeJS版本。 如果我打开一个ssh shell openShift,并让我节点版本比它显示我正确的0.10.21(节点 – 版本)的升级版本。 但是,如果我将启动meteor应用程序,他们会看到0.10.5的nodeJS版本(控制台用'process.version'注销),并再次重新启动… 有人能指出我可以看到发生了什么或者我做错了什么的方向。 谢谢

openshift nodeJS应用程序 – git最新/服务器运行没有错误,但我仍然看到欢迎页面

我正尝试在OpenShift上托pipe一个使用socket.io的nodeJS应用程序。 我在openshift上创build了应用程序,使用git clone来获取回购 – 然后我编辑server.js ,如下所示: #!/bin/env node var express = require('express'); var app = express() , server = require('http').createServer(app) , io = require('socket.io').listen(server); var osipaddress = process.env.OPENSHIFT_NODEJS_IP; var osport = process.env.OPENSHIFT_NODEJS_PORT; app.set('port', osport || 8000); app.set('ipaddress', osipaddress); /*var pf = require('policyfile').createServer(); pf.listen(10843, function(){ console.log(':3 yay') });*/ server.listen(app.get('port'), app.get('ipaddress'), function(){ console.log('Express server listening on port […]