Redis
 sql >> Datenbank >  >> NoSQL >> Redis

Holen Sie sich einen Python-Docker-Container, um mit einem Redis-Docker-Container zu interagieren

Das ist alles über Docker-Netzwerke. Schnelle Lösung - verwenden Sie host Netzwerkmodus für beide Container. Nachteil ist die geringe Isolation, aber Sie werden es schnell zum Laufen bringen:

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

Verbinden Sie sich dann von python zu redis Verwenden Sie einfach localhost als Hostname.

Eine bessere Lösung ist die Verwendung des benutzerdefinierten Bridge-Netzwerks von Docker

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

Beachten Sie, dass Sie in diesem Fall nicht können Verwenden Sie localhost sondern verwenden Sie stattdessen my-db als Hostname. Deshalb habe ich --name my-db verwendet Parameter beim Starten des ersten Containers. In benutzerdefinierten Bridge-Netzwerken erreichen sich Container über ihren Namen.