溫馨提示×

docker怎么搭建mongodb集群

小億
167
2024-01-22 15:13:35
欄目: 云計算

要搭建MongoDB集群,可以使用Docker來快速部署。以下是基本的步驟:

  1. 安裝Docker和Docker Compose:在主機上安裝Docker和Docker Compose,以便能夠使用Docker容器來運行MongoDB。

  2. 創建Docker Compose文件:創建一個名為docker-compose.yaml的文件,用于定義MongoDB集群的配置。

version: '3'
services:
  mongo1:
    image: mongo
    restart: always
    ports:
      - 27017:27017
    volumes:
      - ./data/mongo1:/data/db
    environment:
      - "MONGO_INITDB_ROOT_USERNAME=admin"
      - "MONGO_INITDB_ROOT_PASSWORD=password"
      - "MONGO_INITDB_DATABASE=admin"
      - "REPLICA_SET=rs0"
      - "SERVICE_NAME=mongo1"
  mongo2:
    image: mongo
    restart: always
    ports:
      - 27018:27017
    volumes:
      - ./data/mongo2:/data/db
    environment:
      - "MONGO_INITDB_ROOT_USERNAME=admin"
      - "MONGO_INITDB_ROOT_PASSWORD=password"
      - "MONGO_INITDB_DATABASE=admin"
      - "REPLICA_SET=rs0"
      - "SERVICE_NAME=mongo2"
  mongo3:
    image: mongo
    restart: always
    ports:
      - 27019:27017
    volumes:
      - ./data/mongo3:/data/db
    environment:
      - "MONGO_INITDB_ROOT_USERNAME=admin"
      - "MONGO_INITDB_ROOT_PASSWORD=password"
      - "MONGO_INITDB_DATABASE=admin"
      - "REPLICA_SET=rs0"
      - "SERVICE_NAME=mongo3"

這個配置文件定義了三個MongoDB容器,分別命名為mongo1,mongo2mongo3。每個容器都映射了宿主機上的一個數據目錄,并設置了管理員用戶名、密碼和數據庫名稱。

  1. 啟動MongoDB集群:在終端中運行以下命令,使用Docker Compose啟動MongoDB集群。
docker-compose up -d

這個命令會在后臺啟動MongoDB容器,并自動創建一個名為rs0的復制集。

  1. 初始化復制集:在終端中運行以下命令,連接到MongoDB集群的其中一個節點,并初始化復制集。
docker exec -it mongo1 mongo admin --eval "rs.initiate({_id: 'rs0', members: [{_id: 0, host: 'mongo1:27017'}, {_id: 1, host: 'mongo2:27017'}, {_id: 2, host: 'mongo3:27017'}]})"

這個命令將連接到mongo1容器,并執行MongoDB Shell命令來初始化復制集。

至此,你就成功地搭建了一個MongoDB集群。你可以使用各種MongoDB客戶端工具來連接到集群,并進行數據操作。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女