I flask-appen har jeg en funktion, der forsøger at oprette en redis-klient
db = redis.Redis(host='localhost', port=6379, decode_responses=True)
Når din kolbeproces kører i en beholder, localhost
refererer til selve containerens netværksgrænseflade. Det løser ikke til netværksgrænsefladen på din docker-vært.
Så du skal erstatte localhost
med IP-adressen på containeren, der kører redis.
I sammenhæng med en docker-compose.yml-fil er dette nemt, da docker-compose vil få tjenestenavne til at blive opløst til den korrekte container-IP-adresse:
version: "3"
services:
my_flask_service:
image: ...
my_redis_service:
image: ...
derefter i din kolbe-app skal du bruge:
db = redis.Redis(host='my_redis_service', port=6379, decode_responses=True)