我以前的docker-compose文件配置是
image: mongo:4.2-bionic
container_name: mongodb1
restart: on-failure
env_file: .env
environment:
- MONGO_INITDB_ROOT_USERNAME=$MONGO_USERNAME
- MONGO_INITDB_ROOT_PASSWORD=$MONGO_PASSWORD
ports:
- "$MONGO_PORT:27017"
volumes:
- data1:/data/db
networks:
- app_network
command: ["--replSet", "rs0", "--bind_ip_all"]
字符串
这工作正常。它会创建docker-container,然后我会在docker-container内创建副本。但后来我将docker镜像升级到mongo:6.0.3,现在每次我尝试启动容器时都会抛出错误:
BadValue:当使用副本集启用授权时,需要security.keyFile
1条答案
按热度按时间t3irkdon1#
你需要创建你的密钥文件。MongoDB中的密钥文件用于身份验证,并确保副本集或分片集群的成员之间的安全通信。
你可以这样生成它:
字符串
然后指定mongod经常使用的用户ID和组ID(999)
型
最后,你在docker-compose中指定它,像这样:
型
你对你的复制品也做同样的事
希望这能帮上忙