node.js - Openshift mongodb 连接 url

标签 node.js mongodb url openshift database

我正在尝试将在我的树莓派上运行了几个月的毕业项目放到 openshift 上,这样我就可以将我的 pi 用于其他目的。

我已经转移了所有的nodejs代码。我已经 mongodumped 并将数据库从 PI 恢复到 openshift。所以除了数据库连接之外,我已经启动并运行了所有内容,但我无法弄清楚我做错了什么。

这是我的nodejs代码(config/database.js)中的内容

module.exports = {
  // 'url': 'mongodb://username:password@myraspberrypiIP:27017/trackmyride'
  //  ABOVE LINE WORKS - OPENSHIFT CAN CONNECT TO MY LOCAL DATABASE

  //  ALL LINES BELOW ARE THINGS I TRIED, BUT NODEJS SERVER CAN NEVER START
  // 'url': 'mongodb://$OPENSHIFT_MONGODB_DB_HOST:$OPENSHIFT_MONGODB_DB_PORT/'
  // 'url': 'mongodb://username:password@OPENSHIFT_MONGODB_DB_HOST:OPENSHIFT_MONGODB_DB_PORT/cruizerserver'
  // 'url': 'OPENSHIFT_MONGODB_DB_URL/cruizerserver'
  // 'url': 'mongodb://admin:password@127.*.**.***:27017/cruizerserver'
  // 'url': OPENSHIFT_MONGODB_DB_URL+'cruizerserver'

  'url': process.env.OPENSHIFT_MONGODB_DB_USERNAME + ":"
  + process.env.OPENSHIFT_MONGODB_DB_PASSWORD + "@"
  + process.env.OPENSHIFT_MONGODB_DB_HOST + ':'
  + process.env.OPENSHIFT_MONGODB_DB_PORT + '/'
  + process.env.OPENSHIFT_APP_NAME;
};

(密码/用户名/* 是 stackoverflow 的占位符)

有人知道我做错了什么吗? 使用第一行(连接到我家里的 raspberryPI 上的数据库)时,服务器和项目工作正常,但当我用其中一条底线替换它时,服务器拒绝启动。即使它们是从 openshift 的文档中复制粘贴的。 https://blog.openshift.com/getting-started-with-mongodb-on-nodejs-on-openshift/

谢谢, 文森特

最佳答案

在 OpenShift 上,您不必自己构建 URL。只需从环境变量 OPENSHIFT_MONGODB_DB_URL + OPENSHIFT_APP_NAME 获取即可。

url:  process.env.OPENSHIFT_MONGODB_DB_URL + process.env.OPENSHIFT_APP_NAME

组合这 2 个环境变量将形成如下所示的内容:

mongodb://admin:LUXXXXXXX-YI@XXXX0f534382ecf0d2000095-your_domain.rhcloud.com:52821/your_app_name

关于node.js - Openshift mongodb 连接 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33404703/

相关文章:

node.js - 使用 yeoman 创建 Krakenjs 应用程序

node.js - 在 GAE 上进行 Sequelize 数据库迁移的最佳实践

node.js - 如何使用 nodejs 禁用 tls 1.0 并仅使用 tls 1.1

javascript - 使用 jQuery 获取/更改/删除 URL 参数?

javascript - 格式化程序 URL Javascript 错误

mysql - 使用事务和使用限制对 findAll 查询进行后续处理并抵消其不起作用

node.js - Mongoose 嵌入文档预保存

javascript - JS Express 连接到 mongoose 数据库

c# - 为所有继承自基类型的类设置自定义 MongoDB BsonSerializer

python - Redis - 爬虫访问过的站点列表