sql >> Databasteknik >  >> NoSQL >> Redis

Fel 99 vid anslutning till localhost:6379. Kan inte tilldela begärd adress

I flask-appen har jag en funktion som försöker skapa en redis-klient

db = redis.Redis(host='localhost', port=6379, decode_responses=True)

När din kolvprocess körs i en behållare, localhost hänvisar till själva behållarens nätverksgränssnitt. Det löser sig inte till nätverksgränssnittet för din dockningsvärd.

Så du måste byta ut localhost med IP-adressen för behållaren som körs redis.

I sammanhanget med en docker-compose.yml-fil är detta enkelt eftersom docker-compose kommer att få tjänstnamn att lösas till rätt container-IP-adress:

version: "3"
services:
  my_flask_service:
    image: ...
  my_redis_service:
    image: ...

använd sedan:

i din kolv-app
db = redis.Redis(host='my_redis_service', port=6379, decode_responses=True)


  1. Ta bort blanksteg (ledande och efterföljande) från strängvärde

  2. Redisson, arbetskö/dequeu. Strategier för bearbetning av meddelande / element vid ofullständig meddelandehantering vid avstängning av system / pod

  3. docker-compose:redis anslutning nekad mellan containrar

  4. Spring RedisTemplate :Serialisera flera modellklasser till JSON. Behöver du använda flera RedisTemplates?