आप localhost
का उपयोग नहीं कर सकते हैं कंटेनर के अंदर, यह कंटेनर ही है। इसलिए, आपको हमेशा कनेक्शन अस्वीकृत त्रुटि मिलेगी।
आप निम्न चीज़ें कर सकते हैं -
-
application.properties
. में अपना होस्ट मशीन IP जोड़ें आपके स्प्रिंग बूट एप्लिकेशन की फ़ाइल। (अनुशंसित नहीं है क्योंकि यह डॉकर पोर्टेबिलिटी लॉजिक को तोड़ता है) -
यदि आप
localhost
का उपयोग करना चाहते हैं , उपयोग करें--net=host
कंटेनर शुरू करते समय। (उत्पादन के लिए अनुशंसित नहीं है क्योंकि कोई तार्किक नेटवर्क परत मौजूद नहीं है) -
--links
का उपयोग करें एक DNS नाम के साथ कंटेनर संचार के लिए। (बहिष्कृत/विरासत) -
एक लिखें फ़ाइल बनाएं और सेवा नाम के साथ स्प्रिंग बूट ऐप से अपने डीबी को कॉल करें क्योंकि वे एक ही नेटवर्क में होंगे और एक दूसरे के साथ अत्यधिक एकीकृत होंगे। (अनुशंसित)
PS - जब भी आपको कई कंटेनरों को एक साथ एकीकृत करने की आवश्यकता हो, तो हमेशा docker-compose version 3+
का उपयोग करें . docker run|build
. का उपयोग करें बुनियादी बातों को समझने और ड्राई/टेस्ट रन करने के लिए।