MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

डोकर-लिखें जावा अनुप्रयोग कनेक्शन मोंगोडब के लिए

2019 जुलाई में, आधिकारिक डॉकटर दस्तावेज़ीकरण:

स्रोत:https://docs.docker.com/compose/compose-file/ #लिंक

समाधान #1 :प्रारंभ से पहले पर्यावरण फ़ाइल

मूल रूप से हम पर्यावरण चर . के साथ फ़ाइल में सभी कॉन्फ़िगरेशन को केंद्रीकृत करते हैं और docker-compose up . से पहले इसे निष्पादित करें

इन परिदृश्यों में निम्नलिखित दृष्टिकोण ने मेरी मदद की:

  • आपके docker-compose.yml के बीच जटिल निर्भरता वाले कई कंटेनर हैं
  • आपके docker-compose में आपकी कुछ सेवाओं को उसी मशीन में किसी अन्य प्रक्रिया से कनेक्ट करने की आवश्यकता है। यह प्रक्रिया डॉकटर कंटेनर हो सकती है या नहीं।
  • आपको कई डॉकटर-कंपोज़ फ़ाइलों जैसे होस्ट, पासवर्ड, आदि के बीच चर साझा करने की आवश्यकता है

कदम

1.- कॉन्फ़िगरेशन को केंद्रीकृत करने के लिए एक फ़ाइल बनाएँ

इस फ़ाइल का नाम हो सकता है:/env/company_environments एक्सटेंशन के साथ या नहीं।

export MACHINE_HOST=$(hostname -I | awk '{print $1}')
export GLOBAL_LOG_PATH=/my/org/log
export MONGO_PASSWORD=mypass
export MY_TOKEN=123456

2.- अपने docker-compose.yml में env वेरिएबल का उपयोग करें

कंटेनर ए

app_who_needs_mongo:
  environment:
    - MONGO_HOST=$MACHINE_HOST
    - MONGO_PASSWORD=$MONGO_PASSWORD
    - TOKEN=$MY_TOKEN
    - LOG_PATH=$GLOBAL_LOG_PATH/app1

कंटेनर बी

app_who_needs_another_db_in_same_host:
  environment:
    - POSTGRESS_HOST=$MACHINE_HOST
    - LOG_PATH=$GLOBAL_LOG_PATH/app1

3.- अपने कंटेनर शुरू करें

docker-compose कमांड से पहले स्रोत जोड़ें:

source /env/company_environments
docker-compose up -d

समाधान #2 :host.docker.internal

https://stackoverflow.com/a/63207679/3957754

मूल रूप से डॉकर की एक विशेषता का उपयोग करें जिसमें host.docker.internal सर्वर के आईपी के रूप में इस्तेमाल किया जा सकता है जिसमें आपके डॉकटर-कंपोज़ ने कई कंटेनर शुरू किए हैं



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. डेट को सही तरीके से कैसे सेव करें?

  2. चर से मोंगो फ़ील्ड कैसे सेट करें

  3. MongoDB में 2 फ़ील्ड के योग के साथ कैसे छाँटें?

  4. Mongodb:db.printShardingStatus () / sh.status () जावा में कॉल (और जावास्क्रिप्ट)

  5. कस्टम संग्रह नाम के साथ स्प्रिंग डेटा MongoDB रिपोजिटरी