Docker 部署 MongoDB 并用 IDEA 远程连接 MongoDB

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 填写认证信息

按照照片提示进行

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

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

在这里插入图片描述

要搭建Java与MongoDB的结合,需要使用MongoDB的Java驱动程序和Java开发环境。以下是搭建步骤: 1. 下载MongoDB的Java驱动程序 可以在Maven Central仓库找到MongoDB的Java驱动程序,或者从MongoDB官方网站上下载。 2. 安装MongoDB数据库 在MongoDB官方网站上下载并安装MongoDB数据库,也可以使用Docker容器安装。 3. 创建Java项目 使用Java开发环境,如Eclipse或IntelliJ IDEA创建一个Java项目。 4. 添加MongoDB的Java驱动程序到项目MongoDB的Java驱动程序添加到项目的依赖。 5. 编写Java代码 使用MongoDB的Java驱动程序编写Java代码,连接MongoDB数据库并执行查询操作。 6. 创建Vue项目 使用Vue CLI创建Vue项目。 7. 编写Vue代码 使用Vue框架编写Vue代码,从Java后端获取MongoDB数据库的数据并展现出来。 示例代码: Java代码: ```java import com.mongodb.MongoClient; import com.mongodb.client.MongoDatabase; import org.bson.Document; public class MongoDB { public static void main(String[] args) { MongoClient mongoClient = new MongoClient("localhost", 27017); MongoDatabase database = mongoClient.getDatabase("test"); Document document = database.getCollection("collection").find().first(); System.out.println(document.toJson()); } } ``` Vue代码: ```html <template> <div> <ul> <li v-for="item in items" :key="item._id">{{ item.name }}</li> </ul> </div> </template> <script> export default { data() { return { items: [], }; }, mounted() { fetch("http://localhost:8080/items") .then((response) => response.json()) .then((data) => { this.items = data; }); }, }; </script> ``` 以上是基本的Java与MongoDB的结合以及Vue展现数据的步骤,根据具体需求可以进行更复杂的开发。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值