Redis
 sql >> Base de données >  >> NoSQL >> Redis

obtenir un conteneur docker python pour interagir avec un conteneur docker redis

C'est tout sur la mise en réseau Docker. Solution rapide - utilisez host mode réseau pour les deux conteneurs. L'inconvénient est une faible isolation, mais vous le ferez fonctionner rapidement :

docker run -d --network=host redis ...
docker run --network=host python-redis-py ...

Ensuite pour se connecter depuis python vers redis utilisez simplement localhost comme nom d'hôte.

Une meilleure solution consiste à utiliser le réseau de pont défini par l'utilisateur docker

# create network
docker network create foo
docker run -d --network=foo --name my-db redis ...
docker run    --network=foo python-redis-py ...

Notez que dans ce cas, vous ne pouvez pas utilisez localhost mais utilisez plutôt my-db comme nom d'hôte. C'est pourquoi j'ai utilisé --name my-db paramètre lors du démarrage du premier conteneur. Dans les réseaux de ponts définis par l'utilisateur, les conteneurs se touchent par leurs noms.