1. 部署 MongoDB

# 拉镜像
docker pull mongo;
# 创建 容器
# docker run -d -it -p 27017:27017 --name springCloud_mongo mongo;
# 加上 --auth 需要认证
docker run -d -it -p 27017:27017 --name springCloud_mongo mongo --auth;
# 进入容器
docker exec -it springCloud_mongo /bin/bash;

2. 设置密码

# 进入容器后执行
mongo;


设置用户: admin; 密码: MongoDB;
role: ‘userAdminAnyDatabase’ 代表该用户可以使用任何数据库.

mongo;
use admin;
db.createUser({
  user: 'admin',
  pwd: 'MongoDB',
  roles:[{
    role: 'userAdminAnyDatabase',
    db: 'admin'
  }]
});

尝试使用上面创建的用户信息进行连接. 成功后退出

db.auth('admin', 'MongoDB');
exit;

db.auth(‘admin’, ‘MongoDB’); 返回 1. 代表成功.

3. 创建普通用户, 密码和数据库

退出容器, 重新使用身份用户 admin 进入.

docker exec -it springCloud_mongo mongo admin;

验证身份

db.auth("admin","MongoDB");

创建数据库和文档, 添加数据.

db.auth("admin","MongoDB");
use spring_cloud;
db.spring_cloud.insert({name: 'MongoDB'});

创建用户, 密码和数据库.

db.createUser({
  user: 'spring_cloud',
  pwd: 'MongoDB',
  roles:[{
    role: 'readWrite',
    db: 'spring_cloud'
  }]
});
exit;

4. 设置配置文件

退出容器, 重新进入.

docker exec -it springCloud_mongo /bin/bash;

更新数据源, 安装 vim.

apt-get update;
apt-get install vim;

修改 /etc/mongod.conf.orig 文件.

vim /etc/mongod.conf.orig;

在这里插入图片描述

  1. bindIp: 127.0.0.1 注释掉, 或者 改为 bindIp: 0.0.0.0, 就可以开启远程连接.
  2. 开启权限认证:
    security:
        authorization: enabled

    缩进和其他的保持一致.

5. IDEA 进行远程连接

5.1 下载插件

在这里插入图片描述

安装完插件后重新启动就会在右侧有一个 Mongo Explorer

5.2 填写认证信息

按照照片提示进行

在这里插入图片描述在这里插入图片描述在这里插入图片描述

这个地方展示的数据和上边 “创建的数据库, 文档, 添加数据” 步骤中的数据不一样. 但无伤大雅.

在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐