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 即可开启远程连接

centos下docker部署mongoDB并开启远程访问
这时链接会出现如下错误
centos下docker部署mongoDB并开启远程访问
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.远程服务器还需设置 安全组策略

centos下docker部署mongoDB并开启远程访问

相关文章: