We’re a paying customer.
We are switching from Docker Desktop to Rancher Desktop due to ongoing issues with M1 compatibility. I am currently porting our developer machine container setup to RD, and I am having problems with the combination of RD and Hangfire.Pro.Redis.
My experiments to get this working include
--bind 0.0.0.0, as well as
--protected-mode off for the Redis container (even though these are the defaults). Using
redis-cli, I am able to interact with the database in a variety of ways; however, Hangfire.Pro.Rails fails with either
ConnectionRefused. I have tried Redis 5 and 6.
--loglevel debug on the Redis container shows that Redis is definitely accepting connections from Hangfire.Pro.Redis.
Here is an example stack trace:
Hangfire.Pro.Redis.RedisStorageException Connection to Redis isn't available yet, reconnect is in progress: It was not possible to connect to the redis server(s); Connection refused. Configured endpoints: localhost:6379 at Hangfire.Pro.Redis.RedisStorage.GetMultiplexer() at Hangfire.Pro.Redis.RedisStorage.GetDatabase() at Hangfire.Pro.Redis.RedisDistributedLock.TryAcquireLock() at Hangfire.Pro.Redis.RedisDistributedLock.AcquireOrThrow(TimeSpan timeout) at Hangfire.Pro.Redis.RedisDistributedLock..ctor(Func`1 databaseFactory, Func`1 subscriverFactory, Func`2 isActiveFunc, ILockExtender lockExtender, RedisStorageOptions options, String resource, String lockToken, TimeSpan timeout) at Hangfire.Pro.Redis.RedisConnection.DistributedLockWrapper..ctor(RedisConnection connection, String resource, TimeSpan timeout) at Hangfire.Pro.Redis.RedisConnection.AcquireDistributedLock(String resource, TimeSpan timeout) at Hangfire.RecurringJobExtensions.AcquireDistributedRecurringJobLock(IStorageConnection connection, String recurringJobId, TimeSpan timeout) at Hangfire.RecurringJobManager.AddOrUpdate(String recurringJobId, Job job, String cronExpression, RecurringJobOptions options) at Hangfire.RecurringJobManagerExtensions.AddOrUpdate(IRecurringJobManager manager, String recurringJobId, Job job, String cronExpression, TimeZoneInfo timeZone, String queue) at Hangfire.RecurringJobManagerExtensions.AddOrUpdate(IRecurringJobManager manager, String recurringJobId, Job job, String cronExpression, TimeZoneInfo timeZone) at Hangfire.RecurringJobManagerExtensions.AddOrUpdate(IRecurringJobManager manager, String recurringJobId, Job job, String cronExpression)