डॉकटर कंटेनर में लोकलहोस्ट का उपयोग करना अमान्य है क्योंकि लोकलहोस्ट का मतलब कंटेनर के लिए उसका अपना कंटेनर है, इसलिए यदि आप वेब कंटेनर के भीतर से रेडिस-क्ली चलाते हैं, तो रेडिस-क्ली रेडिस कंटेनर के बजाय वेब कंटेनर में रेडिस खोजने की कोशिश कर रहा है।
यू को रेडिस सेवा नाम निर्दिष्ट करने की आवश्यकता है - डॉकर (डॉकर-कंपोज़ का नेटवर्क अधिक विशिष्ट होने के लिए) आपके लिए रेडिस कंटेनर आईपी के लिए सेवा नाम का समाधान करेगा ताकि आपको इसका उपयोग करना चाहिए:
redis-cli -h redis ping
अपेक्षित आउटपुट है:
PONG
संपादित करें:
यह उत्तर तभी काम करेगा जब दोनों सेवाएं समान नेटवर्क मोड का उपयोग करें, इसलिए 2 तरीके हैं:
- नेटवर्क_मोड जोड़ें:वेब सेवा में होस्ट करें और फिर रेडिस के लिए "लोकलहोस्ट" ठीक रहेगा
- नेटवर्क_मोड हटाएं:रेडिस से होस्ट करें और फिर "रेडिस" डोमेन ठीक रहेगा