node.js - 当我向数据库添加路径时无法连接到 mongodb 容器

标签 node.js mongodb docker mongoose

我在本地将 mongoDB 作为 docker 容器运行,并在启动容器时启动数据库创建。但是当我将路径添加到 dB 时,我似乎无法从我的 nodejs 应用程序连接到数据库。例如,当我使用“mongoDB://admin:password@localhost:27017”时我可以连接,但当我使用“mongoDB://admin:password@localhost:27017/myDB”时不能连接。

我正在使用 docker-compose 运行容器。此外,当我记录运行 mongo 容器的输出时,我看到一条失败消息:

"result":"UserNotFound: Could not find user \"admin\" for db \"journalDB\""}}

JournalDB 是我要连接的数据库的名称,我希望能够像这样从我的 nodejs 应用程序连接到它:

mongoose
.connect("mongoDB://admin:password@localhost:27017/journalDB", {
  useNewUrlParser: true,
  useUnifiedTopology: true,
})

我已经阅读了类似问题的答案 here还有这个documentation ,但我感觉他们只是说明了可能出现的问题,并没有帮我解决。 如果有一个简单的解决方案,我将不胜感激。

最佳答案

也许试试 .connect("mongoDB://admin:password@localhost:27017/journalDB?authSource=admin"...

关于node.js - 当我向数据库添加路径时无法连接到 mongodb 容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69048762/

相关文章:

mysql - 我如何使用 sequelize findorcreate defaults

Apache + Node.js + mod_proxy。如何将一个域路由到 :3000 and another to :80

node.js - 有没有办法根据 package.json 的更改来更新特定的依赖项?

docker - 如何在 containerPort 变量中允许 Kubernetes 中的一系列端口?

javascript - 将 CKEditor/TinyMCE 与 Meteor 一起使用

MongoDB、PyMongo - 根据查找条件聚合

mongodb - 副本集和MongoDB,选项{w : 1} make the system AP in terms of CAP?

c# - 从结果中过滤掉 id mongodb c#

docker - Kubernetes中的Cronjob可以重新启动(删除)部署中的Pod

apache - 共享文件夹 Docker