首页 > 解决方案 > 连接到 MongoDb 时 Docker 身份验证失败

问题描述

当我尝试运行 Docker 容器并连接到本地 MongoDB 数据库时,它给了我这个错误:

UnhandledPromiseRejectionWarning:MongooseServerSelectionError:身份验证失败。

这是最后的连接网址:mongodb://pody-admin:Nt4VzWPtDhkCxESjXVJx@localhost:27017/podify

我正在尝试获得一个其他人为我工作的身份验证系统(克隆了存储库)。

我真的没有处理团队项目和使用其他人代码的经验,更不用说 Docker。

我并不是真的期待一个解决方案,但想知道在哪里寻找甚至了解可能出了什么问题。

这是我在cmd中得到的:

$ npm 运行起来

server@1.0.0 up D:\projects\SOS\podify\Server docker-compose up -d

启动 server_db_1 ... 完成 启动 server_cache_1 ... 完成

server@1.0.0 postup D:\projects\SOS\podify\Server npm run dev

server@1.0.0 dev D:\projects\SOS\podify\Server npm run dev --prefix api

api@1.0.0 dev D:\projects\SOS\podify\Server\api nodemon --exec ts-node src/index.ts

[nodemon] 2.0.4 [nodemon] 随时重启,输入rs [nodemon] 观看路径:. [nodemon] 看扩展:ts,json [nodemon] 开始ts-node src/index.ts

连接 url => mongodb://pody-admin:Nt4VzWPtDhkCxESjXVJx@localhost:27017/podify

(节点:5072)UnhandledPromiseRejectionWarning:MongooseServerSelectionError:身份验证失败。在 NativeConnection.Connection.openUri (D:\projects\SOS\podify\Server\api\node_modules\mongoose\lib\connection.js:828:32) 在 Mongoose.connect (D:\projects\SOS\podify\Server\ api\node_modules\mongoose\lib\index.js:335:15) 在 D:\projects\SOS\podify\Server\api\src\index.ts:10:20 在对象。(D:\projects\SOS\podify\Server\api\src\index.ts:21:3) 在 Module._compile (internal/modules/cjs/loader.js:1137:30) 在 Module.m._compile ( D:\projects\SOS\podify\Server\api\node_modules\ts-node\src\index.ts:858:23) 在 Module._extensions..js (internal/modules/cjs/loader.js:1157:10 ) 在 Object.require.extensions。[as .ts] (D:\projects\SOS\podify\Server\api\node_modules\ts-node\src\index.ts:861:12) 在 Module.load (internal/modules/cjs/loader.js: 985:32) 在 Function.Module。_load (internal/modules/cjs/loader.js:878:14) 在 Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12) 在 main (D:\projects\SOS\podify\Server \api\node_modules\ts-node\src\bin.ts:227:14) 在对象。(D:\projects\SOS\podify\Server\api\node_modules\ts-node\src\bin.ts:513:3) 在 Module._compile (internal/modules/cjs/loader.js:1137:30) 在Object.Module._extensions..js (internal/modules/cjs/loader.js:1157:10) 在 Module.load (internal/modules/cjs/loader.js:985:32) (node:5072) UnhandledPromiseRejectionWarning: Unhandled承诺拒绝。此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。要在未处理的 Promise 拒绝时终止节点进程,请使用 CLI 标志 executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12) 在 main (D:\projects\SOS\podify\Server\api\node_modules\ts-node\src\bin.ts:227:14)在对象。(D:\projects\SOS\podify\Server\api\node_modules\ts-node\src\bin.ts:513:3) 在 Module._compile (internal/modules/cjs/loader.js:1137:30) 在Object.Module._extensions..js (internal/modules/cjs/loader.js:1157:10) 在 Module.load (internal/modules/cjs/loader.js:985:32) (node:5072) UnhandledPromiseRejectionWarning: Unhandled承诺拒绝。此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。要在未处理的 Promise 拒绝时终止节点进程,请使用 CLI 标志 executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12) 在 main (D:\projects\SOS\podify\Server\api\node_modules\ts-node\src\bin.ts:227:14)在对象。(D:\projects\SOS\podify\Server\api\node_modules\ts-node\src\bin.ts:513:3) 在 Module._compile (internal/modules/cjs/loader.js:1137:30) 在Object.Module._extensions..js (internal/modules/cjs/loader.js:1157:10) 在 Module.load (internal/modules/cjs/loader.js:985:32) (node:5072) UnhandledPromiseRejectionWarning: Unhandled承诺拒绝。此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。要在未处理的 Promise 拒绝时终止节点进程,请使用 CLI 标志 \projects\SOS\podify\Server\api\node_modules\ts-node\src\bin.ts:227:14)在对象。(D:\projects\SOS\podify\Server\api\node_modules\ts-node\src\bin.ts:513:3) 在 Module._compile (internal/modules/cjs/loader.js:1137:30) 在Object.Module._extensions..js (internal/modules/cjs/loader.js:1157:10) 在 Module.load (internal/modules/cjs/loader.js:985:32) (node:5072) UnhandledPromiseRejectionWarning: Unhandled承诺拒绝。此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。要在未处理的 Promise 拒绝时终止节点进程,请使用 CLI 标志 \projects\SOS\podify\Server\api\node_modules\ts-node\src\bin.ts:227:14)在对象。(D:\projects\SOS\podify\Server\api\node_modules\ts-node\src\bin.ts:513:3) 在 Module._compile (internal/modules/cjs/loader.js:1137:30) 在Object.Module._extensions..js (internal/modules/cjs/loader.js:1157:10) 在 Module.load (internal/modules/cjs/loader.js:985:32) (node:5072) UnhandledPromiseRejectionWarning: Unhandled承诺拒绝。此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。要在未处理的 Promise 拒绝时终止节点进程,请使用 CLI 标志 js (internal/modules/cjs/loader.js:1157:10) 在 Module.load (internal/modules/cjs/loader.js:985:32) (node:5072) UnhandledPromiseRejectionWarning: 未处理的承诺拒绝。此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。要在未处理的 Promise 拒绝时终止节点进程,请使用 CLI 标志 js (internal/modules/cjs/loader.js:1157:10) 在 Module.load (internal/modules/cjs/loader.js:985:32) (node:5072) UnhandledPromiseRejectionWarning: 未处理的承诺拒绝。此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。要在未处理的 Promise 拒绝时终止节点进程,请使用 CLI 标志--unhandled-rejections=strict(参见 https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode)。(拒绝 ID:1)(节点:5072)[DEP0018] DeprecationWarning:不推荐使用未处理的承诺拒绝。将来,未处理的 Promise 拒绝将使用非零退出代码终止 Node.js 进程。[nodemon] clean exit - 在重启前等待更改

标签: node.jsdatabasemongodbtypescriptdocker

解决方案


推荐阅读