Я запускаю приложение с ядром dotnet и заново использую docker-compose.Для имени хоста Redis установлено имя контейнера, используемого в сети Docker.Диспетчер подключений redis в служебном стеке настраивается с использованием строки подключения.Однако, по-видимому, всегда по умолчанию возвращается к localhost: 6379
Это сработало 2 недели назад, тот же docker-compose.yaml, тот же код для Redis Client Manager.
Версия Docker18.09.1, сборка 4c52b90 - версия 1.23.2 для docker-compose, сборка 1110ad01
Я испробовал всевозможные варианты строки подключения согласно руководству servicestack.redis.
CODE:
container.Register<IRedisClientsManager>(c => new BasicRedisClientManager(Environment.GetEnvironmentVariable("CACHE_CONNECTION_STRING")));
container.Register<ICacheClient>(c => c.Resolve<IRedisClientsManager>().GetCacheClient());
Console.WriteLine($"Cache details: Cache={Environment.GetEnvironmentVariable("CACHE")}, CONNECTION_STRING={Environment.GetEnvironmentVariable("CACHE_CONNECTION_STRING")}");
ЛОГИ:
Connection string used:
dev-backend | Cache details: Cache=Redis, CONNECTION_STRING=dev-redis:6379
Error:
dev-backend | fail: ServiceStack.Redis.RedisNativeClient[0]
dev-backend | Could not connect to redis Instance at localhost:6379
Есть идеи, почему это происходит?