无法连接到数据库 Heroku nestjs mongoose

Unable to connect to the database Heroku nestjs mongoose

我正在尝试将我的 nestjs 项目部署到 heroku。但是我在连接到 mongoDB

时一直出现超时错误
2020-03-08T21:53:43.192716+00:00 app[web.1]: [31m[Nest] 54   - 
[39m03/08/2020, 9:53:43 PM   [38;5;3m[MongooseModule] [39m[31mUnable to connect to the database. 
Retrying (1)...[39m[38;5;3m +30084ms[39m
2020-03-08T21:53:53.398546+00:00 heroku[web.1]: State changed from starting to crashed
2020-03-08T21:53:53.308228+00:00 heroku[web.1]: Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 60 seconds of launch

奇怪的是它是 mongodb atlas 集群(在云端),当我尝试从我的机​​器访问它时一切正常...

这是一个 url,看起来像这样:mongodb+srv://myDbUserName:myPassword@cluster0-opbo3.gcp.mongodb.net/test?retryWrites=true&w=majority

我尝试直接传递MongooseModule中的uri 像这样 MongooseModule.forRoot(CONFIG.MONGODB_URI) 可以在我的机器上再次运行...但不是 heroku...

我还尝试在 heroku 中添加 MONGODB_URI 作为 env 变量并使用它:process.env.MONGODB_URI 但没有成功。

我错过了什么?

如果你有什么想法!谢谢你们!

我终于找到问题所在了。

在 mongo Atlas 界面中只有我的 locale 机器 ip 被列入白名单。

我现在已经将集群开放给任何 ip。它奏效了。