MongoDB知识

1、部署MongoDB

(1)new好一个mongo文件之后执行

(出现mongodb.key)记得放行端口

openssl rand -base64 666 > mongodb.key

(2)放到一个docker-compose.yml之后docker-compose up -d执行

version: '3.2'
 
services:
  # 服务名称
  mongodb-27017:
    # 使用最新的 mongodb 镜像
    image: mongo:latest
    # docker 服务启动时,自动启动 mongo 容器
    restart: always
    # 容器的名称
    container_name: mongodb-27017
    # 宿主机中的目录和文件,映射容器内部的目录和文件
    volumes:
      - ./27017/data:/data/db
      - ./mongodb.key:/data/mongodb.key
    ports:
      # 宿主机的端口映射容器内的端口
      - 27017:27017
    environment:
      # 初始化一个 root 角色的用户 jobs 密码是 123456
      - MONGO_INITDB_ROOT_USERNAME=root
      - MONGO_INITDB_ROOT_PASSWORD=lht660036
    # 使用创建的桥接网络,把各个 mongodb 容器连接在一起
    networks:
      - mongo-network
    # 启动容器时,在容器内部额外执行的命令
    # 其中 --replSet 参数后面的 mongos 是集群名称,这个很重要
    command: mongod --replSet mongos --keyFile /data/mongodb.key
    entrypoint:
      - bash
      - -c
      - |
        chmod 400 /data/mongodb.key
        chown 999:999 /data/mongodb.key
        exec docker-entrypoint.sh $$@
  
  mongodb2:
    image: mongo:latest
    restart: always
    container_name: mongodb-27018
    volumes:
      - ./27018/data:/data/db
      - ./mongodb.key:/data/mongodb.key
    ports:
      - 27018:27017
    environment:
      - MONGO_INITDB_ROOT_USERNAME=root
      - MONGO_INITDB_ROOT_PASSWORD=lht660036
    networks:
      - mongo-network
    command: mongod --replSet mongos --keyFile /data/mongodb.key
    entrypoint:
      - bash
      - -c
      - |
        chmod 400 /data/mongodb.key
        chown 999:999 /data/mongodb.key
        exec docker-entrypoint.sh $$@
 
  mongodb3:
    image: mongo:latest
    restart: always
    container_name: mongodb-27019
    volumes:
      - ./27019/data:/data/db
      - ./mongodb.key:/data/mongodb.key
    ports:
      - 27019:27017
    environment:
      - MONGO_INITDB_ROOT_USERNAME=root
      - MONGO_INITDB_ROOT_PASSWORD=lht660036
    networks:
      - mongo-network
    command: mongod --replSet mongos --keyFile /data/mongodb.key
    entrypoint:
      - bash
      - -c
      - |
        chmod 400 /data/mongodb.key
        chown 999:999 /data/mongodb.key
        exec docker-entrypoint.sh $$@
 
# 创建一个桥接网络,把各个 mongodb 实例连接在一起,该网络适用于单机
# 如果在不同的宿主机上,使用 docker swarm 需要创建 overlay 网络
networks:
  mongo-network:
    driver: bridge

(3)然后随便进入一个容器,输入账号密码

docker exec -it 461950f32d09 '/bin/bash'

(4)进去之后初始化一下

rs.initiate({
    _id: "mongos",
    members: [
        { _id : 0, host : "129.204.151.181:27017" },
        { _id : 1, host : "129.204.151.181:27018" },
        { _id : 2, host : "129.204.151.181:27019" }
    ]
});

(5)正常连接,搞定

2、Springboot集成

(1)new一个项目,先选好aliyun配置(不然只能用3.0的)

(2)勾选好信息

 

相关推荐

  1. MongoDB基础知识

    2024-03-24 16:12:02       38 阅读
  2. MongoDB基础知识

    2024-03-24 16:12:02       7 阅读
  3. mongodb的基本知识

    2024-03-24 16:12:02       20 阅读
  4. <span style='color:red;'>mongoDB</span>

    mongoDB

    2024-03-24 16:12:02      51 阅读
  5. <span style='color:red;'>MongoDB</span>

    MongoDB

    2024-03-24 16:12:02      30 阅读
  6. <span style='color:red;'>MongoDB</span>

    MongoDB

    2024-03-24 16:12:02      41 阅读

最近更新

  1. 获取和设置Spring Cookie

    2024-03-24 16:12:02       0 阅读
  2. Spring——配置说明

    2024-03-24 16:12:02       0 阅读
  3. springboot中在filter中用threadlocal存放用户身份信息

    2024-03-24 16:12:02       0 阅读
  4. LDAP技术解析:打造安全、高效的企业数据架构

    2024-03-24 16:12:02       1 阅读
  5. android 替换设置-安全里面的指纹背景图片

    2024-03-24 16:12:02       1 阅读
  6. Node.js的应用场景

    2024-03-24 16:12:02       1 阅读

热门阅读

  1. 5.79 BCC工具之tcpaccept.py解读

    2024-03-24 16:12:02       22 阅读
  2. 外部提供控制程序

    2024-03-24 16:12:02       19 阅读
  3. Python基础语法(二)

    2024-03-24 16:12:02       21 阅读
  4. 大厂面试--列举并解释一下 http的所有请求方法?

    2024-03-24 16:12:02       18 阅读
  5. HTTP 及其版本详解

    2024-03-24 16:12:02       24 阅读