使用Redis Insight连接Docker部署的Redis,逻辑数据库名称填什么?
解决Redis Insight连接时「Redis数据库逻辑名称」验证失败问题
问题核心
你误解了「Redis数据库逻辑名称」的用途——这个字段是给当前连接设置的自定义别名(用来区分不同环境的Redis实例),不是Redis的数据库编号(0、1这类)。你之前填的"0""db0"等纯数字或带特殊前缀的字符串,不符合该字段的命名验证规则。
解决方案
- 填写合法的逻辑名称:随便起一个有意义的字符串即可,比如
LocalAppRedis、DockerRedisCache这类,不需要和数据库编号挂钩。 - 确认Redis连接参数:
- 主机:如果在Docker内部网络连接,填
redis(docker-compose中Redis服务的名称);如果从宿主机连接,填127.0.0.1 - 端口:填
6389(对应你映射的宿主机端口) - 密码:留空(你的Redis配置未设置密码)
- 数据库编号:在专门的「数据库」字段填
0(默认就是0,可按需修改)
- 主机:如果在Docker内部网络连接,填
- 优化docker-compose配置(可选):你的Redis服务中
expose字段写的是6389,但容器内实际端口是6379,建议修正为容器内端口;同时显式声明卷更规范:
version: '3.5' services: redis: image: redis:latest restart: always ports: - '6389:6379' expose: - 6379 # 修正为容器内实际端口 command: redis-server --save 20 1 --loglevel warning volumes: - redis:/data cache-redis-insight: image: redislabs/redisinsight:latest ports: - '8001:8001' volumes: redis: # 显式声明卷,符合规范
内容的提问来源于stack exchange,提问作者delete
相关产品推荐
相关产品推荐

