创建简单的mongo docker网络时出错

问题描述 投票:0回答:1

我正在尝试使用 mongo db 和 mongo Express 图像使用 docker 创建我的第一个 docker 网络。

我用

docker pull mongo
docker pull mongo-express
拉了。

我使用

docker network create mongo-network
创建了一个 docker 网络,然后我首先使用以下命令启动了 mongo docker:

docker run -p 27017:27017 -d -e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=mongoadmin --name mongodb --net mongo-network mongo

同样还有 mongo-express:

docker run -d -e ME_CONFIG_MONGODB_ADMINUSERNAME=admin -e ME_CONFIG_MONGODB_ADMINPASSWORD=password --net mongo-network --name me -e ME_CONFIG_MONGODB_SERVER=mongodb mongo-express

环境变量如下所示: https://hub.docker.com/_/mongo-express

但是日志显示以下错误:

Sun Sep 15 10:52:34 UTC 2024 retrying to connect to mongo:27017 (10/10)
/docker-entrypoint.sh: line 15: mongo: Try again
/docker-entrypoint.sh: line 15: /dev/tcp/mongo/27017: Invalid argument
No custom config.js found, loading config.default.js
Welcome to mongo-express 1.0.2
------------------------


Could not connect to database using connectionString: mongodb://admin:****@mongodb:27017/"
/app/node_modules/mongodb/lib/cmap/connection.js:227
                    callback(new error_1.MongoServerError(document));
                             ^

MongoServerError: Authentication failed.
    at Connection.onMessage (/app/node_modules/mongodb/lib/cmap/connection.js:227:30)
    at MessageStream.<anonymous> (/app/node_modules/mongodb/lib/cmap/connection.js:60:60)
    at MessageStream.emit (node:events:517:28)
    at processIncomingData (/app/node_modules/mongodb/lib/cmap/message_stream.js:125:16)
    at MessageStream._write (/app/node_modules/mongodb/lib/cmap/message_stream.js:33:9)
    at writeOrBuffer (node:internal/streams/writable:392:12)
    at _write (node:internal/streams/writable:333:10)
    at Writable.write (node:internal/streams/writable:337:10)
    at Socket.ondata (node:internal/streams/readable:809:22)
    at Socket.emit (node:events:517:28) {
  ok: 0,
  code: 18,
  codeName: 'AuthenticationFailed',
  connectionGeneration: 0,
  [Symbol(errorLabels)]: Set(2) { 'HandshakeError', 'ResetPool' }
}

Node.js v18.20.3

我错过了什么?

mongodb docker image docker-network mongo-express
1个回答
0
投票

在第一个容器中,您使用用户名

admin
和密码
mongoadmin

在第二个容器中,您尝试使用用户名

admin
和密码
password

进行身份验证
© www.soinside.com 2019 - 2024. All rights reserved.