spring-boot - 无法从 Spring Boot 连接到 Dockerized Redis
问题描述
我在 Windows 10 机器上运行了一个 Spring Boot Rest 服务,并且在 Docker 容器上运行了 Redis。现在,我希望我的 Spring Boot 连接到 redis 容器,但是,它总是给我以下错误:
java.net.UnknownHostException: redis
我的application.properties包含以下内容:
# Set Redis server and Jedis settings
spring.redis.host = redis
spring.redis.port = 6379
spring.redis.password = test123
spring.jedis.connection.timeout = 60
这是我的 docker-compose.yml:
version: '2'
networks:
app-tier:
driver: bridge
services:
redis:
image: 'bitnami/redis:latest'
container_name: 'redis-cache'
environment:
- REDIS_PASSWORD=test123
- REDIS_DISABLE_COMMANDS=FLUSHDB,FLUSHALL
labels:
kompose.service.type: nodeport
ports:
- '6379:6379'
volumes:
- 'redis_data:/bitnami/redis'
networks:
- app-tier
volumes:
redis_data:
driver: local
解决方案
请在 application.properties 中设置 spring.redis.host = localhost。
由于当前值集是“redis”,因此应用程序无法找到该主机,因此您会收到 unknownhost 异常。
推荐阅读
- angular - 从字符串创建一个类
- c# - 如何为日期时间字符串找到正确的自定义格式
- selenium-webdriver - 在使用此类 augmentedDriver 时,它会启动不必要的浏览器实例
- python - 无法在 ubuntu 16.04 的 anaconda 中安装 cv2
- css - 有条件的页面大小
- angular - 如何使用指令检测多个自定义组件的值变化
- javascript - Javascript/Canvas - 为什么我的变量会递增,为什么 if 语句会执行?
- cookies - 如何使用 Katalon Studio 提取浏览器 cookie
- javascript - 如何通过变量将类名传递给jquery函数
- r - 在 Windows 中通过 R 中的程序访问文件时如何消除安全问题?