快速开始

生成 keyfile

openssl rand -base64 756 > mongo-keyfile
chmod 600 mongo-keyfile

docker-compose

version: "3.9"
services:
  mongo1:
    image: mongo:7.0
    ports:
      - "27017:27017"
    volumes:
      - ./mongo1-data:/data/db
      - ./mongo-keyfile:/etc/mongo-keyfile:ro
    command: ["mongod","--replSet","rs0","--bind_ip_all", "--keyFile", "/etc/mongo-keyfile"]
  # ... mongo2, mongo3 similar

连接URI

mongodb://admin:admin123@localhost:27017/?replicaSet=rs0&authSource=admin

常见报错

症状根因修复
permissions on keyfile are too openmongo-keyfile非600chmod 600
Authentication failed密码/库错误确认authSource
ReplicaSetNoPrimary还未选主等待或检查priority