docker运行mogodb
docker运行mongodb容器有两种:
1、不需要验证密码就能直接登录
2、验证密码才能登录(推荐)
不需要验证密码就能直接登录
docker run -itd --name mongo --restart=always -p 27017:27017 -v /docker/mongo/data:/data/db mongo:latest
验证密码才能登录(推荐)
docker run -itd --name mongo --restart=always -p 27017:27017 -v /docker/mongo/data:/data/db mongo:latest --auth
以admin身份进入mongo容器:
docker exec -it mongo mongosh admin
创建admin用户并设置密码:
db.createUser({ user:'admin',pwd:'123456',roles:[{ role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]})
验证admin用户是否创建成功:
db.auth('admin', '123456')
重启mongo容器:
docker restart mongo
遇到的问题:
在创建数据库后,没法删除,提示缺少认证信息
解决方法:
新建一个具有admin权限的root用户,然后用root用户登录即可
1、切换到admin数据库
docker exec -it mongo mongosh admin
use admin
db.auth('admin', '123456')
2、创建root用户
db.createUser(
{
user:"root",
pwd:"123456",
roles:[{role:"root",db:"admin"}]
}
);
3、退出mongo,使用root账号登录
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?