Itu semua tentang jaringan Docker. Solusi cepat - gunakan host
mode jaringan untuk kedua wadah. Kekurangannya adalah isolasi yang rendah, tetapi Anda akan membuatnya bekerja dengan cepat:
docker run -d --network=host redis ...
docker run --network=host python-redis-py ...
Kemudian untuk menghubungkan dari python
untuk redis
cukup gunakan localhost
sebagai nama host.
Solusi yang lebih baik adalah dengan menggunakan jaringan jembatan yang ditentukan pengguna buruh pelabuhan
# create network
docker network create foo
docker run -d --network=foo --name my-db redis ...
docker run --network=foo python-redis-py ...
Perhatikan bahwa dalam hal ini Anda tidak bisa gunakan localhost
tetapi gunakan my-db
sebagai nama host. Itu sebabnya saya menggunakan --name my-db
parameter saat memulai wadah pertama. Dalam jaringan jembatan yang ditentukan pengguna, wadah saling menjangkau dengan nama mereka.