Docker - 当我使用环境变量时,无法从 Docker 中的节点后端建立 MongoDB 连接

问题描述

问题基本上是我从 1 个月以来一直在使用 docker,当我尝试从我的 Node 后端建立 MongoDB 连接时,它说身份验证失败。但是当我在 MongoDB 的 docker 命令中使用环境变量时出现问题。

我用于 Mongo 的 Docker 命令 -

docker run --name mongodb --rm -d -v data:/data/db -e MONGO_INITDB_ROOT_USERNAME=root -e MONGO_INITDB_ROOT_PASSWORD=pass --network net mongo

后端文件夹中使用的Docker命令-

docker run --name backend --rm -p 80:80 --network net node-app

我有一个 MERN 堆栈项目——比如项目名称是 demo-mern,旁边有两个文件夹——比如后端和前端。

在后端我有我的 Dockerfile 和我在那里写的代码 -

来自节点

工作目录 /app

复制 package.json .

运行 npm install

复制。 .

曝光 80

CMD ["node","app.js"]

此外,我在节点后端 docker 命令之前启动了 MongoDB 命令,当我执行该命令时,它显示身份验证失败。我还检查了 docker 中的日志。还说身份验证失败。

这是后端命令执行输出的截图 - image

这里是来自 MongoDB 的日志 - image

支持解决问题。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)