MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

SpringBoot di Docker tidak terhubung ke Mongo di Docker

EDIT:

Saya belum pernah melakukan pengembangan spring-boot, tetapi kesalahan yang Anda katakan sedang ditampilkan mungkin sangat tidak terkait dengan masalah mongo. Namun, berikut adalah penjelasan mengapa koneksi mongo Anda gagal:

docker-compose membuat jaringan virtual jika belum ditentukan dalam file (seperti dalam kasus Anda).

Semua aplikasi Anda berjalan di dalam jaringan ini, sepenuhnya terisolasi satu sama lain. Dengan demikian, localhost di wadah spring-boot Anda sebenarnya mengacu pada dirinya sendiri. Artinya aplikasi spring-boot Anda mengharapkan mongo instance untuk dijalankan di dalam wadahnya (yang bukan, itu dalam wadah yang berbeda).

Ini akan baik-baik saja ketika database dan aplikasi berjalan di jaringan laptop Anda. Tetapi seperti yang disebutkan, mereka sekarang berjalan di docker-compose jaringan, dalam isolasi penuh.

Namun, docker-compose benar-benar pintar! Itu membuat DNS untuk setiap wadah Anda yang menggunakan nama layanan (dalam kasus Anda mongo dan spring ) yang ditentukan dalam docker-compose . Anda file untuk memungkinkan akses mudah ke wadah di dalam jaringan.

Jadi, Anda harus dapat mengubah spring.data.mongodb.uri=mongodb://localhost:27017/db ke spring.data.mongodb.uri=mongodb://mongo:27017/db dan itu harus memungkinkannya untuk terhubung.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. konversi stempel waktu UTC ke stempel waktu zona lainnya

  2. Pencarian teks lengkap di mongodb di .net

  3. Menghapus catatan duplikat menggunakan MapReduce

  4. Manual Audit Database Sumber Terbuka DevOps - Semua Yang Harus Anda Ketahui

  5. Skema Mongoose belum terdaftar untuk model