在 docker-compose 中将 mongodb 与 spring-boot 应用程序连接时出现此错误

Posted

技术标签:

【中文标题】在 docker-compose 中将 mongodb 与 spring-boot 应用程序连接时出现此错误【英文标题】:Getting this error when connecting mongodb in docker-compose with spring-boot application 【发布时间】:2021-10-29 02:44:19 【问题描述】:

"ctx":"conn18","msg":"身份验证失败","attr":"mechanism":"SCRAM-SHA-1","speculative":false,"principalName":"user" ,"authenticationDatabase":"user_db","re​​mote":"172.20.0.8:51928","extraInfo":,"error":"UserNotFound: 找不到用户 "user" for db "user_db""

user 是我的用户名,user_db 是数据库名称

【问题讨论】:

请澄清您的具体问题或提供其他详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。 其实我通过在spring-boot的application.yml文件的数据库的uri中添加?authSource=admin解决了这个错误。顺便感谢您的回复。 【参考方案1】:

在spring-boot application.yml文件的uri末尾添加authSource=admin

spring:
  data:
    mongodb:
      uri: mongodb://user:pass@localhost:27017/user_db?authSource=admin

【讨论】:

以上是关于在 docker-compose 中将 mongodb 与 spring-boot 应用程序连接时出现此错误的主要内容,如果未能解决你的问题,请参考以下文章

Springboot 容器使用 docker-compose 连接到 mongo 容器的 503 错误代码

Docker-compose django+mongo 应用程序卡在“正在执行系统检查...”

Springboot mongo docker-compose 连接失败

docker-compose启动并使用MongoDB

docker-compose

Mongodb 与 docker-compose - 创建用户