[记录] Docker 方式部署 MongoDB
创建数据文件夹
mkdir -p /data/db
mkdir -p /data/backup
获取镜像
docker pull mongo
创建mongodb容器
docker run --name mongodb -v /data/db:/data/db -v /data/backup:/data/backup -p 27017:27017 -d mongo --auth
如果加需要验证就加--auth,不需要验证,就去掉。默认mongodb是不使用用户认证
进入容器设置用户
docker exec -it mongodb /bin/bash
mongo
use admin
db.createUser({user:"root",pwd:"12!@qwaszx",roles:[{role:'root',db:'admin'}]}) //创建用户,此用户创建成功,则后续操作都需要用户认证
use test;
db.createUser({user:"testuser",pwd:"testpass",roles:["readWrite"]});
db.auth("testuser","testpass")
// 测试是否连接成功
mongo 宿主机ip/admin -utest -p
exit
备份
docker exec mongo sh -c 'exec var=`date +%Y%m%d%H%M` && mongodump -h localhost --port 27017 -u jsmith -p password -d dbname -o /data/backup/$var_test1.dat'