Redis
 sql >> Teknologi Basis Data >  >> NoSQL >> Redis

Docker [Errno 111] Sambungan panggilan gagal ('127.0.0.1', 6379)

Coba ubah 127.0.0.1:6379 ke redis:6379 .

Meskipun Redis sedang berjalan, python your Anda wadah tidak dapat berkomunikasi dengannya; ini karena mencoba menyambung ke 127.0.0.1:6379 , tetapi dari perspektif penampung, tidak ada yang berjalan di sana. Ini bisa sedikit membuat frustrasi untuk di-debug, tetapi sedikit lebih mudah jika Anda ingat bahwa container mendapatkan namespace jaringan mereka sendiri. Akibatnya, python 's localhost !=redis 's localhost !=localhost mesin host Anda .

Untungnya, mudah untuk menghubungkan container yang berbagi bridge yang sama, dan secara default, docker-compose membuat jaringan jembatan tunggal dan menghubungkan semua wadah Anda dengannya, menyediakan DNS yang diperlukan untuk memungkinkan mereka menemukan satu sama lain. Akibatnya, komunikasi container-to-container bekerja hanya dengan menggunakan nama layanan.

Sebagai catatan, Anda dapat menjalankan container di namespace yang sama, dan menjalankannya di namespace host, melalui --net=container:<container-id> atau --net=host bendera. Ini sangat berguna untuk menjalankan alat debugging dalam wadah dan melampirkannya ke ruang nama jaringan baik wadah lain atau host, mis. menggunakan netshoot untuk melihat port mana yang mendengarkan di dalam wadah (terbuka atau tidak), docker run --rm -it --net container:test_web_1 nicolaka/netshoot netstat -tulpn .



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Predis memberikan 'Kesalahan saat membaca baris dari server'

  2. Apa akibat mematikan gosip, pergaulan dan detak jantung bagi pekerja seledri?

  3. Ketersediaan Tinggi dengan Redis Sentinel:Menghubungkan ke Redis Master/Slave Set

  4. Menemukan kunci menggunakan wildcard

  5. Redis:Amazon EC2 vs Elasticache