Redis
 sql >> Base de Dados >  >> NoSQL >> Redis

obter um contêiner python docker para interagir com um contêiner redis docker


Isso é tudo sobre a rede do Docker. Solução rápida - use host modo de rede para ambos os contêineres. A desvantagem é o baixo isolamento, mas você fará com que funcione rapidamente:
docker run -d --network=host redis ...
docker run --network=host python-redis-py ...

Em seguida, para conectar de python para redis basta usar localhost como um nome de host.

A melhor solução é usar a rede de ponte definida pelo usuário do docker
# create network
docker network create foo
docker run -d --network=foo --name my-db redis ...
docker run    --network=foo python-redis-py ...

Observe que, neste caso, você não pode use localhost mas em vez disso use my-db como um nome de host. É por isso que usei --name my-db parâmetro ao iniciar o primeiro contêiner. Em redes de ponte definidas pelo usuário, os contêineres alcançam uns aos outros por seus nomes.