在我的本地Mac M1 PRO上,我使用Docker compose来装载基于MongoDB 5的单节点复制集已经有几个月了。
version: "3.9"
services:
mongodb:
image: mongo:5
command: --replSet rs0
ports:
- '28017:27017'
healthcheck:
test: echo 'db.runCommand("ping").ok' | mongo localhost:27017/admin --quiet
interval: 2s
timeout: 3s
retries: 5
mongo-init:
image: mongo:5
restart: "no"
depends_on:
mongodb:
condition: service_healthy
command: >
mongo --host mongodb:27017 --eval
'
rs.initiate( {
_id : "rs0",
members: [
{ _id: 0, host: "localhost:27017" }
]
})
'
它运行良好,我有一个简单的MongoDB 5复制集。现在,我想在MongoDB 6上做同样的事情。因此,我将镜像从mongodb:5修改为mongodb:6,但复制集没有挂载。
我有这个错误:
{"t":{"$date":"2023-04-14T08:52:52.326+00:00"},"s":"I", "c":"-", "id":4939300, "ctx":"monitoring-keys-for-HMAC","msg":"Failed to refresh key cache","attr":{"error":"NotYetInitialized: Cannot use non-local read concern until replica set is finished initializing.","nextWakeupMillis":24600}}
我不需要TLS或加密花哨的功能。
我的配置有什么问题?
1条答案
按热度按时间6uxekuva1#
mongo 6 docker容器改变了一些内部结构,这是一个工作版本,除了在命令/健康检查中设置正确的端口之外,端口差异并不相关。