होम·एरर संदेश

docker · Docker

संदेश

Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

इसका मतलब

docker आदेश ख़ुद कुछ नहीं करता — वह उस socket के ज़रिए एक daemon से काम कराता है, और कोई जवाब नहीं आया। या daemon चल नहीं रहा, या macOS/Windows पर Docker Desktop का शुरू होना पूरा नहीं हुआ, या Linux पर आपका उपयोगकर्ता docker समूह में नहीं है और socket खोल नहीं सकता; तीनों यही एक पंक्ति देते हैं। Linux पर sudo systemctl start docker से चालू करें; Desktop हो तो पहले ऐप खोलें। अनुमति का मामला हो तो sudo usermod -aG docker $USER और फिर नया login ठीक कर देता है — पर ध्यान रहे कि वह समूह व्यवहार में root के बराबर ताक़त देता है।

सुधार

sudo systemctl start docker
कौन देता है
docker
Docker
12

docker की त्रुटियाँ तभी पढ़ी जाती हैं जब आप उन्हें परत के हिसाब से बाँट लें — client का daemon तक न पहुँचना, registry का मना करना, build के दौरान किसी RUN का विफल होना, और container का चालू होते ही मर जाना — ये चार अलग समस्याएँ हैं; और build तथा चलने की परतों में पंक्ति स्वयं कारण नहीं होती: कारण उस आदेश के output में होता है जो भीतर चल रहा था, और हर उपाय की क़ीमत भी परत के अनुसार बदलती है।

एरर संदेश कैसे पढ़ें

  • पहली पंक्ति से पढ़ें। जितना नीचे जाएँगे उतना वह औज़ार के भीतर की बात है; कारण आम तौर पर सबसे ऊपर लिखा होता है।
  • फ़ाइल का नाम और पंक्ति संख्या दिखे तो वहीं से शुरू करें — stack का सबसे ऊपरी frame नहीं, बल्कि वह सबसे ऊपरी पंक्ति जिसमें आपकी लिखी फ़ाइल का नाम हो।
  • संदेश को जैसा है वैसा खोजें, पर पहले अपने paths और variable नाम हटा दें — वही खोज को अटकाते हैं।
  • वही स्थिति औज़ार के हर संस्करण में अलग शब्दों में आती है। नतीजे बेमेल लगें तो संस्करण संख्या भी जोड़ें।
  • कोई सुधार चिपकाने से पहले देख लें कि वह क्या फेंक देगा। इनमें कुछ पलटे नहीं जा सकते।

अक्सर पूछे जाने वाले सवाल

Q. “Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?” का क्या मतलब है?

docker आदेश ख़ुद कुछ नहीं करता — वह उस socket के ज़रिए एक daemon से काम कराता है, और कोई जवाब नहीं आया। या daemon चल नहीं रहा, या macOS/Windows पर Docker Desktop का शुरू होना पूरा नहीं हुआ, या Linux पर आपका उपयोगकर्ता docker समूह में नहीं है और socket खोल नहीं सकता; तीनों यही एक पंक्ति देते हैं। Linux पर sudo systemctl start docker से चालू करें; Desktop हो तो पहले ऐप खोलें। अनुमति का मामला हो तो sudo usermod -aG docker $USER और फिर नया login ठीक कर देता है — पर ध्यान रहे कि वह समूह व्यवहार में root के बराबर ताक़त देता है।

Q. इसे कैसे ठीक करें?

sudo systemctl start docker — चलाने से पहले ऊपर देख लें कि यह कमांड क्या फेंक देता है।

Q. यह कौन-सा औज़ार देता है?

docker। यह Docker में आता है, और संदेश 13 शब्दों का है।

साथ आने वाले एरर