创建容器
# 拉取镜像
docker pull mongo
# 创建容器
# 定义容器名称 --name my-mongo
# 宿主机端口 27018 与容器端口 27017 映射绑定 -p 27018:27017
# -d 后台运行容器,并返回容器id
# 如果加需要验证就加--auth,不需要验证,就去掉。默认mongodb是不使用用户认证
docker run --name my-mongo -p 27018:27017 -d mongo --auth
进入容器
docker exec -it 容器id /bin/bash
mongo
use admin
db.createUser({user:"root",pwd:"root",roles:[{role:'root',db:'admin'}]}) //创建用户,此用户创建成功,则后续操作都需要用户认证
exit
或者直接进入admin
docker exec -it ly-mongo mongo admin
db.createUser({user:"root",pwd:"root",roles:[{role:'root',db:'admin'}]}) //创建用户,此用户创建成功,则后续操作都需要用户认证
exit
测试
# 在容器中执行
# mongo 宿主机ip/admin -uroot -p
root@ae8c7278eab6:/# mongo 192.168.136.148:27018/admin -uroot -p
MongoDB shell version v4.4.5
Enter password:
输入之前设置的密码 root
哦了,测试环境就这样了,可以开始练习mongodb的相关命令了
在学习mongodb之前相关的概念有必要理解以下,毕竟在mongodb中没有表这个概念
SQL术语/概念 MongoDB术语/概念 解释/说明 database database 数据库 table collection 数据库表/集合 row document 数据记录行/文档 column field 数据字段/域 index index 索引 table joins 表连接,MongoDB不支持 primary key primary key 主键,MongoDB自动将_id字段设置为主键
相关操作命令
# 选择(创建)数据库,在数据库没有数据之前并没有实际创建数据库
use test_db
# 显示数据库列表
show dbs
# 创建集合,集合名 user
db.createCollection('user')
# 在集合中添加文档,即添加了个 json 数据 {'ab':'xyz'}
db.user.insert({'ab':'xyz'})
# 添加多个文档
db.user.insert([{'ab':'xyz'},{'11':'22'}])
# 查找文档,查找 字段 ab=xyz 的文档
db.user.find({'ab':'xyz'})
相关事项
…
笔记就先写到这里,还在学习中,日后再更新