创建目录文件
1
2
3
mkdir -p /home/docker/mongodb/conf/
mkdir -p /home/docker/mongodb/data/
mkdir -p /home/docker/mongodb/logs/
增加配置文件
1
cd /home/docker/mongodb/conf && vim mongod.conf
增加内容
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 数据库文件存储位置
dbpath = /data/db
# log文件存储位置
logpath = /data/log/mongod.log
# 使用追加的方式写日志
logappend = true
# 是否以守护进程方式运行
# fork = true
# 全部ip可以访问
bind_ip = 0.0.0.0
# 端口号
port = 27017
# 是否启用认证
auth = true
# 设置oplog的大小(MB)
oplogSize=2048
增加log文件
1
2
3
cd /home/docker/mongodb/logs/ && vi mongod.log
chmod 777 mongod.log
运行容器
1
2
3
4
5
6
7
8
9
10
docker run \
--name mongodb \
--restart=always \
--privileged \
-p 27017:27017 \
-v /home/docker/mongodb/data:/data/db \
-v /home/docker/mongodb/conf:/data/configdb \
-v /home/docker/mongodb/logs:/data/log/ \
-d mongo:latest \
-f /data/configdb/mongod.conf
修改配置
进入容器
1
docker exec -it mongodb /bin/bash
进入mongodb
1
mongo
切换到admin库
1
use admin
创建账号/密码
1
db.createUser({ user: 'admin', pwd: 'admin', roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] });