拉取镜像
# docker pull mongdo:4.0.3
数据为持久化:不挂载容器卷
# docker run -itd --name mongo -p 27017:27017 mongo --auth
创建mongoDB账号
1)进入容器创建数据库访问用户账号密码,并且尝试连接
[root@nhk ~]# docker exec -it mongo mongo admin
MongoDB shell version v5.0.5
connecting to: mongodb://127.0.0.1:27017/admin?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("2c914490-5b3d-4c44-b85f-abc0963cf2c2") }
MongoDB server version: 5.0.5
================
Warning: the "mongo" shell has been superseded by "mongosh",
which delivers improved usability and compatibility.The "mongo" shell has been deprecated and will be removed in
an upcoming release.
For installation instructions, see
https://docs.mongodb.com/mongodb-shell/install/
================
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
https://docs.mongodb.com/
Questions? Try the MongoDB Developer Community Forums
https://community.mongodb.com
>
2)执行mongoDB 语句, 创建mongoDB账号
> db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]});
Successfully added user: {
"user" : "admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
},
"readWriteAnyDatabase"
]
}
3)使用创建账号进行连接
> db.auth("admin","123456")
1
数据持久化:挂载容器卷
# docker run --name my_mongo -v /opt/data/mongodb:/data/db --rm -d -p 27017:27017 mongo:4.0.3
参数说明:
进入容器
# docker exec -it mongo /bin/bash
使用mongo客户端
mongo