1. 搜索、拉取和查看镜像
docker searh mongoDb
docker pull mongo
docker images | grep mongo
2.使用 docker 安装 mongodb(创建容器并运行)
docker run --name mongo -v ~/docker/mongo:/data/db -p 27017:27017 -d mongo
执行上述命令之后, 一个挂载了 mongo镜像的容器就开始运行了 其中
–name 设置了容器的名字
-v 设置了路径的映射, 将本地路径映射到容器中. 此处, 路径可以自定义
-p 设置了端口的映射, 将容器的27017(左侧) 映射到了本地的27017(右侧)
查看容器是否成功创建
docker ps
启动容器
docker start mongo
3. 进入、退出容器
#进入容器
docker exec -it mongo bash
上述命令的意思如下: 使用交互的形式, 在 名字为 mongo 的容器中实行 bash这个命令
退出:ctl + P + Q 或者 exit
4. mongodb的使用
.用户的创建
#进入
mongo
mongo
#进入 admin 的数据库
use admin
#创建管理员用户
db.createUser(
{
user: “root”,
pwd: “752700”,
roles: [ { role: “root”, db: “admin” } ]
}
)
# 创建有可读写权限的用户. 对于一个特定的数据库, 比如’demo’
db.createUser({
user: ‘test’,
pwd: ‘123456’,
roles: [{role: “read”, db: “demo”}]
})
.数据库的建立
use demo;
mongo 是否正常启动的校验
#先写入一条数据
db.info.save({name: ‘test’, age: ‘22’})
#查看写入的数据
db.info.find();
结果如下
{ “_id” : ObjectId(“5c973b81de96d4661a1c1831”), “name” : “test”, “age” : “22” }
5. 远程连接的开启
在mongodb 的容器当中
#更新源
apt-get update
#安装 vim
apt-get install vim
#修改 mongo 配置文件
vim /etc/mongod.conf.orig
将其中的bindIp: 127.0.0.1注释掉# bindIp: 127.0.0.1或者改成bindIp: 0.0.0.0 即可开启远程连接
这时链接会出现如下错误
6. 开放端口27017
.检查防火墙状态:systemctl status firewalld
开启防火墙端口:firewall-cmd --zone=public --add-port=27017/tcp --permanent
命令含义:
–zone #作用域
–add-port=27017/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效
重新加载配置:firewall-cmd --reload
查看开放的端口:firewall-cmd --list-ports
出现27017端口就可以了
7.远程服务器还需设置 安全组策略