Docker实战(1):通过配置⽂件启动MongoDB 系统环境:Centos7 MongoDB 4.0.0
创建⽂件
注意:创建⽂件全是为了Docker run做准备,⽂件所对应的路径需与下⼀步的映射路径所对应,路径可⾃我更改。
mkdir mongo
cd mongo
mkdir data conf logs
cd logs
mkdir -p mongodb/master
touch mongodb/master/mongodb.log
chmod 777 mongodb/master/mongodb.log
touch /home/mongo/f
vim /home/mongo/f
# 增加已下配置⽂件
# 数据库⽂件存储位置
dbpath = /data/db/
# log⽂件存储位置
logpath = /data/log/mongodb/master/mongodb.log
# 使⽤追加的⽅式写⽇志
logappend = true
# 是否以守护进程⽅式运⾏
# fork = true
# 端⼝号
port = 27017
# 是否启⽤认证
auth = true
# 设置oplog的⼤⼩(MB)
oplogSize=2048
防⽕墙设置
开启防⽕墙
systemctl start firewall
防⽕墙放端⼝
firewall-cmd --zone=public --add-port=27010/tcp --permanent
重启防⽕墙
firewall-cmd --reload
Docker run
启动docker
docker run -itd --name mongodb --restart=always --privileged -p 27017:27017 -v /home/mongo/data:/data/db -v /home/mongo/conf:/data/configdb -v /home/mongo/logs:/data/log/ mongo:4.0.0 -f /data/f --bind_ip_all
# -v 指定配置⽂件启动
# --bind_ip_all 允许所以IP访问
# ----restart=always Docker服务重启容器也启动
# --privileged 拥有真正的root权限
MongoDB设置
docker exec -it mongodb bash
mongo
> use admin #切换数据库,如果没有的话就是创建库
> db.createUser({user:'super',pwd:'super', roles:[{role:'root', db:'admin'}]}) #创建⽤户
> db.auth("super","super") #切换⽤户
> db.test.find().pretty() #查所有⽤户
MongoDB语句
数据库删除语句,如下删除test库
>use test
>db.dropDatabase() #删除⽤户需有权限才⾏,所删除之前需要登录有权限的账号⽤户删除语句,如下删除read⽤户
>use admin
> db.auth("super","super") #删除⽤户需有权限才⾏,所需切换有权限的账号
docker重启容器命令>db.dropUser("read")
数据库删除语句,如下在test库中插⼊数据
> use test
> db.test.insert({"name":"菜鸟教程"})
注意:权限为所以数据库的话,必须在数据库admin下切换账号,不然会报错。
参考链接
MongoDB语句参考:
MongoDB配置参考:
MongoDB权限参考:
以上内容经个⼈实操操作完成并成功,已将参考链接放置末尾如对配置⽂件或者命令疑问者可查看参考链接。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论