首页 > 解决方案 > 向数据库添加路径时无法连接到 mongodb 容器

问题描述

我在本地将 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,
})

我已经在这里阅读了类似问题的答案和本文档,但我觉得他们只是解释了可能的问题,但并没有帮助我解决它。如果有一个简单的解决方案,我将不胜感激。

标签: node.jsmongodbdockermongoose

解决方案


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


推荐阅读