Por padrão o Redis não aceita conexões externas, mesmo se for conexões de uma subrede do próprio como containers do Docker. Para contornar essa limitação, pode se expandir o bind do Redis para escutar outros IPs e aplicar autenticação para essa forma de conexão.
Para as alterações a seguir, você pode editar o arquivo redis.conf usando:
sudo nano /etc/redis/redis.conf
Exemplo de binds que você pode usar:
bind 127.0.0.1 -::1 - Libera somente conexões localhost em IPv4 e IPv6bind 127.0.0.1 -::1 172.17.0.1 - Libera conexões localhost em IPv4 e IPv6, e o IP padrão do Dockerbind * -::* - Libera TODOS os IPs para se conectar ao Redis
Independente do bind, o Redis permite que conexões localhost não precise de autenticação, porém conexões de IPs diferentes, mesmo um IP local como o do Docker, requerem autenticação. Para contornar isso, é preciso desligar o protected-mode, definindo dessa forma a linha:
protected-mode no
Para aplicar as alterações, execute:
sudo systemctl restart redis-server
Para monitorar em tempo real as queries enviadas ao Redis, execute:
sudo redis-cli monitor