Я использую Spring boot 2.2.5 и данные Redis redis и изображение bitnami / redis-sentinel docker.
bitnami / redis-sentinel docker изображение отлично работает с docker compose .
Я могу подключиться к redis с помощью redis-cli. (Cli показывает 127.0.0.1:6379 подключен)
Но в моем локальном загрузочном приложении Spring это не работает. Трассировка ошибок выглядит следующим образом:
org.springframework.data.redis.connection.PoolException: Could not get a resource from the pool; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to 172.28.0.2:6379
at org.springframework.data.redis.connection.lettuce.LettucePoolingConnectionProvider.getConnection(LettucePoolingConnectionProvider.java:109) ~[spring-data-redis-2.2.5.RELEASE.jar:2.2.5.RELEASE]
Caused by: io.lettuce.core.RedisConnectionException: Unable to connect to 172.28.0.2:6379
at io.lettuce.core.RedisConnectionException.create(RedisConnectionException.java:78) ~[lettuce-core-5.2.2.RELEASE.jar:5.2.2.RELEASE]
Caused by: io.netty.channel.ConnectTimeoutException: connection timed out: /172.28.0.2:6379
at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1.run(AbstractNioChannel.java:261) ~[netty-transport-4.1.45.Final.jar:4.1.45.Final]
IP-адрес 172.28.0.2 - это redis master ip в образе docker.
Моя конфигурация сторожевого хоста такая, как показано ниже, 127.0.0.1:26379 , 127.0.0.1: 26379,127.0.0.1: 26379
Я полагаю, что мое приложение хорошо справляется с основной информацией через конфигурацию локального стража.
Тогда почему мое приложение находит 172.28.0.2:6379 для master вместо 127.0.0.1:6379?
Нужно ли мне изменить адрес в этом docker образе или я должен также запустить свое приложение на docker?
Любая помощь будет быть оцененным!