Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

364
Views
MongoServerError: la autenticación falló al usar mongo y mongo express con contenedores docker

Estoy aprendiendo docker, así que estaba siguiendo uno de los videos que mostraba cómo conectar su aplicación js con mongoDB cuando se ejecuta en contenedores docker. Ahora, una pequeña variación que hice es que se muestra para conectar mongo en el puerto del sistema 27017, que es el puerto predeterminado de mongo, pero el problema es que no quiero conectarme a mi sistema mongo instalado sino al contenedor mongo, así que para ese propósito decidí ejecute el contenedor mongo en el puerto 3535. Cuando lo hice, mongo-express se conectó con éxito a mongo, pero cuando intento conectarlo con mi aplicación js (usando mongoose), muestra continuamente errores con el error de autenticación. He verificado que la contraseña es correcta. no hay problema con los corchetes, el comando que usé para subir mis contenedores docker es

docker run -d -p 3535:27017 --name mongoDB --network databases -e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=admin mongo

y otro para mongo-express es

docker run -d -p 8081:8081 --name mongoExp --network databases -e ME_CONFIG_BASICAUTH_USERNAME=admin -e ME_CONFIG_BASICAUTH_PASSWORD=admin -e ME_CONFIG_MONGODB_SERVER=mongoDB -e ME_CONFIG_MONGODB_AUTH_USERNAME=admin -e ME_CONFIG_MONGODB_AUTH_PASSWORD=admin mongo-express

El código de mi aplicación de nodo se ve así

 const mongoose = require('mongoose'); const {Humans}= require("./models/humans.js") mongoose.connect('mongodb://admin:admin@localhost:3535/user', {useNewUrlParser: true, useUnifiedTopology: true }).then(()=>{ console.log("connected to db"); }) let data={ name:"Vaibhav Jain", mob:"9801", skills:"coding" } const express = require('express') const app = express(); app.set('view engine', 'ejs'); app.get("/",async(req,res)=>{ // console.log(Humans); // await Humans.insertMany( ); // await Humans.insertMany({name:"Mobius" , mob:"5908922",skills:"drawing"}); const result = await Humans.find(); res.send(result); }) app.get("/home",(req,res)=>{ res.render("home", data); }) app.listen(3000,()=>{ console.log("listening port"); })
También una cosa que me gustaría mencionar: he creado una base de datos de usuarios que tiene una colección humana, todo esto lo creé desde la interfaz de usuario, pero quería conectarlo a mi aplicación usando mangosta, por lo que ese humano que se muestra como importado es en realidad esquema vacío (lea eso desde algún lugar donde puede usar colecciones existentes de tal manera, corríjame en esta parte también si me equivoco) Solo como referencia actual, mi ventana acoplable está en este estado ingrese la descripción de la imagen aquí

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Es posible que no haya creado un usuario para el usuario de la base de user después de crearlo mediante la interfaz de usuario. En su caso, puede ejecutar esta consulta para crear un usuario normal.
> use user
> db.createUser({user: "user", pwd: "user", roles:["dbOwner"]})
Después de eso, puede conectarse a la base de datos de user usando esta cadena mongodb://user:user@localhost:3535/user

Consulte el documentodb.CreateUser .

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!