我正在尝试安装Redis集群。配置是集群的最小设置。我正在使用docker-组合来运行我的应用程序。但它总是抛出以下错误。但是,当我将Redis连接到外部工具时,它会成功地连接起来。
ClusterAllFailedError: Failed to refresh slots cache
const db = new Redis.Cluster([{
host: "redis",
port: 6379
}]) 我可以在docker容器上看到Redis主实例和副本实例。
主服务器
container ID - 8a7f4d9fc877
image - bitnami/redis:latest
ports - 0.0.0.0:32862->6379/tcp
name - mogus_redis_1从机
container ID - f04433e04de5
image - bitnami/redis:latest
ports - 0.0.0.0:32863->6379/tcp
name - mogus_redis-replica_1yml文件
redis:
image: "bitnami/redis:latest"
ports:
- 6379
environment:
REDIS_REPLICATION_MODE: master
ALLOW_EMPTY_PASSWORD: "yes"
volumes:
- redis-data:/bitnami
redis-replica:
image: "bitnami/redis:latest"
ports:
- 6379
depends_on:
- redis
environment:
REDIS_REPLICATION_MODE: slave
REDIS_MASTER_HOST: redis
REDIS_MASTER_PORT_NUMBER: 6379
ALLOW_EMPTY_PASSWORD: "yes"发布于 2020-06-06 16:43:35
您不是在使用Redis集群,而是使用一个主服务器和一个副本。在这种情况下,您的应用程序应该只使用单实例类,我假设这个类如下所示:
const db = new Redis([{
host: "redis",
port: 6379
}])https://stackoverflow.com/questions/62226889
复制相似问题