docker安装mongodb过程

  1. docker pull mongo:4.0.10 (2019-07-22 最新4.0.10)

  2. 创建db目录 和 mongo.conf
    mongo.conf 内容:

bind_ip_all=true
port=27017
dbpath=/data/db
logappend=false
auth=true
  1. docker run -d --name <你自己docker容器命名>
    -p 27017:27017
    -v <你本地挂载db目录>:/data/db/ \
    -v <你本地mongo.conf目录>:/etc/mongo/ \
    -e MONGO_INITDB_ROOT_USERNAME=你的用户名
    -e MONGO_INITDB_ROOT_PASSWORD=你的密码
    mongo --config /etc/mongo/mongo.conf

我的例子
我的docker容器命名 mongo-qin
我的db 目录 :/usr/local/docker/mongo/db
mongo.conf 位置: /usr/local/docker/mongo/etc/mongo.conf

docker run -d --name mongo-qin \
	-p 27017:27017 \
	-v /usr/local/docker/mongo/db:/data/db/ \
	-v /usr/local/docker/mongo/etc:/etc/mongo/ \
	-e MONGO_INITDB_ROOT_USERNAME=root \
	-e MONGO_INITDB_ROOT_PASSWORD=373616885 \
	mongo --config /etc/mongo/mongo.conf
  1. 进入容器docker
docker exec -it mongo-qin /bin/bash
  1. 连接admin
    mongo ip:port/dbname -u 用户名 -p 密码 --authenticationDatabase admin
    我的例子:
mongo 127.0.0.1:27017/admin -u root -p 373616885 --authenticationDatabase admin
  1. 认证admin
    先 use admin 然后 db.auth 认证 成功 1
use admin

db.auth('root','373616885')

查看用户:
db.system.users.find()
  1. 创建自己的db和用户
use mongo

db.createUser({user:"mongo",pwd:"373616885",roles:[{role:"readWrite",db:"mongo"}]}) 

db.auth('mongo','373616885')
  1. 愉快退出然后本机连接docker遇到问题:
mongo 172.19.241.16:27017/admin -u root -p 373616885 --authenticationDatabase admin

MongoDB shell version: 2.6.10
connecting to: 172.19.241.16:27017/admin
2019-07-22T22:34:35.755+0800 Error: 2 { ok: 0.0, errmsg: "Auth mechanism not specified", code: 2, codeName: "BadValue" } at src/mongo/shell/db.js:1287
exception: login failed
  1. 解决:原文:https://blog.csdn.net/pcjdpcq/article/details/84141540
    问题:MongoDB server 版本是4.0.10,客户端版本是 2.6.10
删除 之前的 mongodb-clients
sudo apt-get purge mongodb-clients
安装了整个 MongoDB
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/4.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list
sudo apt-get update
sudo apt-get install -y mongodb-org
  1. 再次连接愉快的玩耍
mongo 172.19.241.16:27017/admin -u root -p 373616885 --authenticationDatabase admin

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值