En tu código localhost de rq-worker1 es rq-worker1 en sí mismo, no redis y no puede comunicarse con redis:6379 conectándose a localhost de rq-worker1 . Pero por defecto redis y rq-worker1 están en la misma red y puede usar el nombre del servicio como un nombre de dominio en esa red. Significa que puede conectarse a redis servicio de rq-worker1 usando redis como nombre de dominio, por ejemplo:client.connect(("redis", 6379))
Debe reemplazar localhost con redis en la configuración de rq-worker1 .