一、docker-compose安装MongoDB
> cd /home> mkdir mongo> cd mongo> vi docker-compose.ymlversion: '3.1'services:mongo:image: mongorestart: alwaysenvironment:MONGO_INITDB_ROOT_USERNAME: rootMONGO_INITDB_ROOT_PASSWORD: exampleports:- 27017:27017volumes:- /home/mongotest:/data/db> docker-compose up -d #拉取镜像,创建docker,运行mongodb服务> docker ps | grep mongo
二、Linux上创建MongoDB数据库、集合
> docker exec -it mongotest_mongo_1 mongo #连接数据库> use admin #创建admin数据库> db.auth('root','example') #登录> show dbs #查看数据库> use testdb #创建testdb数据库> db.createUser({user:'test',pwd:'123456',roles:[{role:'dbOwner', db:'testdb'}]}) #创建用户> db.auth('root','123456')
可通过GUI工具 - Robo 3T连接
三、MongoDB备份与恢复
# 备份mongodump> docker ps | grep mongotest # 查看容器名称,这里是mongotest_mongo_1> docker exec -it mongotest_mongo_1 mongodump -h localhost -u root -p example -o/tmp/test #进入MongoDB终端#-d可以备份制定数据库#-o指定备份目录> docker cp 8eb747c359b9:/tmp/test /tmp/test #将容器内部目录复制出来,8eb747c359b9为容器id# 恢复mongorestoredocker exec -it mongotest_mongo_1 mongorestore -h localhost -u root -p example --dir /tmp/test#--dir为备份路径
