我正在尝试将我的feathersJS应用程序部署在带有mongodb数据库的heroku上。我使用了mLab沙盒计划,我没有在上面配置任何东西。但是,由于没有任何文档或之前任何关于它的问题,我在这里我做了一个运行在mongodb上的feathersJS应用程序。但是当我在heroku上部署它时,我总是得到一个错误503,服务不可用(超时)。下面是/config/default.json
"mongodb": "mongodb://localhost:27017/api_feathers",在这一行上可能会有一些变化。还有这里的production.js
{ "host": "api-feathers-app.feathersjs.com", "port": "PORT" }发布于 2018-03-08 14:47:36
如前所述,您可以在mongodb属性中将MongoDB URL添加到production.json中。Heroku还将为大多数MongoDB插件设置MONGODB_URI,您可以通过将production.json更改为::
{
"host": "api-feathers-app.feathersjs.com",
"port": "PORT",
"mongodb": "MONGODB_URI"
}发布于 2018-03-08 05:06:57
如果您登录到mlab并转到您的数据库,您应该看到一个连接字符串。在production.json的底部,您应该添加一行以连接到mlab数据库。
类似于:
{
"host": "api-feathers-app.feathersjs.com",
"port": "PORT",
"mongodb": "mongodb://USERNAME:PASSWORD@ADDRESS-AT-MLAB:PORT/DB_NAME"
}最后一行将在mlab设置中提供给您。此外,mlab可能需要在mongodb url的末尾添加一些查询字符串,例如?ssl=true。但他们会告诉你什么是必要的。
发布于 2018-04-24 23:41:28
登录到您的mlab帐户并创建新环境(如果尚未创建)。
然后单击数据库名称。它将向您显示包含集合、用户、统计信息、备份和工具的选项卡。
单击用户选项卡,它将向您显示分配给该数据库的用户列表。如果您尚未为此创建用户,则必须通过单击“添加数据库用户”按钮来创建用户。
一旦创建了用户,然后将其添加到production.json文件中。将此作为值添加到production.json文件中的mongodb密钥
mongodb://<dbuser>:<dbpassword>@ds115749.mlab.com:15749/<dbname>将<dbuser>替换为您先前创建的数据库用户名,将与dbuser关联的密码替换为<dbpassword>,并将其替换为您试图访问的数据库的名称。
下面是production.json文件的完整代码库
{
"host": "https://your.domainname.com/",
"port": "PORT",
"public": "../public/",
"paginate": {
"default": 10,
"max": 1000
},
"mongodb": "mongodb://<dbuser>:<dbpassword>@ds115749.mlab.com:15749/<dbname>",
}
请注意,default.json适用于您的开发环境,而production.json适用于您的生产环境,并在您部署同一目录中的文件时使用。
https://stackoverflow.com/questions/49156298
复制相似问题