[FIX] डोकर डेमन से / यूनिक्स में कनेक्ट नहीं कर सकता: ///var/run/docker.sock '

जैसा कि नीचे वर्णित है।



ध्यान दें: यह विधि केवल उन उपयोगकर्ताओं के लिए काम करती है जिन्होंने डॉकर को एपीटी पैकेज मैनेजर के साथ स्थापित किया था। यदि आपने Docker को स्थापित किया है स्नैप , को देखें समाधान 5 नीचे।

  1. टर्मिनल खोलें और पहले कमांड निष्पादित करें - बेपनाह काम करनेवाला
सुडो सिस्टेक्टल अनमास्क डॉकटर

यदि हम docker के मुखौटे पर docker सेवा शुरू करने का प्रयास करते हैं, तो हम त्रुटि का सामना कर सकते हैं। Docker.service शुरू करने में विफल: इकाई का मुखौटा लगाया जाता है। 'मास्क को अक्षम करने का अधिक मजबूत संस्करण माना जा सकता है। जब एक यूनिट फ़ाइल को मास्क किया जाता है, तो यूनिट से जुड़ा होता है'देव / बातिल। 'आप कमांड के साथ सभी यूनिट फाइलों की स्थिति को सूचीबद्ध कर सकते हैं - the $ systemctl सूची-यूनिट-फाइलें '



2. एक बार docker यूनिट है बेनकाब , हम कर सकते हैं कर्ता शुरू करो डेमॉन systemctl कमांड के साथ। डाक में काम करनेवाला मज़दूर डेमॉन छवियाँ, कंटेनर और डॉकर एपीआई अनुरोध जैसी वस्तुओं का प्रबंधन करता है। कमांड-लाइन पर नीचे दिए गए कमांड को निष्पादित करें।



systemctl प्रारंभकर्ता
डॉकर सेवा शुरू करें

डॉकर सेवा शुरू करें



3. करने के लिए सत्यापित करें क्या डॉकटर सेवा सक्रिय है और चल रहा है । हम उपयोग करेंगे व्यवस्थित स्थिति कमांड, जो विशेष सेवा की वर्तमान स्थिति को दर्शाता है। अपने टर्मिनल पर नीचे दी गई कमांड निष्पादित करें।

systemctl स्टेटस डॉकटर
डॉकर सेवा की स्थिति

डॉकर सेवा की स्थिति

उपरोक्त छवि से, हम यह देख सकते हैं कर्ता सक्रिय है और चल रहा है



समाधान 2: D फेल्ड डॉकर पुल ’और स्टार्ट डॉकर सेवा को साफ करें

ऐसे मामले हैं जहां आप कंटेनर को खींचते समय अप्रत्याशित रूप से डॉकर को बंद कर सकते हैं। इस तरह की परिस्थितियां मुखौटा होंगी docker.service तथा docker .socket फ़ाइलें। Docker.socket so पर स्थित एक फ़ाइल है/var/run/docker.sock 'और डॉकर डेमन के साथ संवाद करने के लिए उपयोग किया जाता है। हमें करने की आवश्यकता होगी पोल खोलना दो यूनिट फाइलें - docker। सेवा और docker.daemon पहले कार्यवाही सेवा शुरू करो।

  1. लॉन्च करें टर्मिनल और निष्पादित करें आदेशों नीचे:
systemctl अनमास्क docker.service सिस्टममेक्टल अनमास्क docker.socket systemctl प्रारंभ docker.service
डॉकर सेवा शुरू करें

डॉकर सेवा शुरू करें

यदि आप अभी भी कमांड को निष्पादित करने के बाद भी त्रुटि का सामना कर रहे हैं, तो हमें इसकी आवश्यकता होगी हटाना में फ़ाइलें Containerd डॉकर को फिर से शुरू करने से पहले निर्देशिका। कंटेनर एक फीचर था जिसे डॉकर 1.11 में पेश किया गया था और इसका इस्तेमाल डॉकटर के जीवन-चक्र को प्रबंधित करने के लिए किया जाता है।

2. टर्मिनल खोलें और नीचे दिए गए कमांड निष्पादित करें। सुनिश्चित करें कि आप जानते हैं रूट पासवर्ड चूँकि हमें कमांड्स को निष्पादित करने के लिए एलिवेटेड विशेषाधिकार की आवश्यकता होगी।

sudo su service docker stop cd / var / run / docker / libcontainerd rm -rf containerd / * rm -f docker-containerd.pid सेवा प्रारंभकर्ता
डॉकटर सेवा पुनः आरंभ करें

डॉकटर सेवा पुनः आरंभ करें

समाधान 3: डॉकडर (डॉकर डेमन) सेवा शुरू करें

Dockerd Docker डेमॉन है जो Docker API को सुनता है और विभिन्न Docker ऑब्जेक्ट को प्रबंधित करता है। Dockerd कमांड के विकल्प के रूप में इस्तेमाल किया जा सकता है be $ systemctl प्रारंभकर्ता ‘जिसका इस्तेमाल डोकर डेमॉन को शुरू करने के लिए भी किया जाता है।

  1. खुला हुआ टर्मिनल तथा शुरू करो नीचे दिए गए आदेश को निष्पादित करके:
सूदो dockerd
डॉकडर शुरू करें

डॉकडर शुरू करें

समाधान 4: सेवा कमांड के साथ डॉकर शुरू करें

यदि आप उपयोग कर रहे हैं SysV init सिस्टम , तब systemctl कमांड आपके लिए काम नहीं करेगा। हमें इसका उपयोग करने की आवश्यकता होगी सेवा कमान सेवा शुरू करो डेकर डेमन

  1. टर्मिनल लॉन्च करें और निष्पादित नीचे दिए गए आदेश:
sudo service --status-all sudo service docker start
डॉकर सेवा शुरू करें

डॉकर सेवा शुरू करें

समाधान 5: स्नैप के साथ डॉकर सेवा शुरू करें

यदि आपने डॉकर को इसके साथ स्थापित किया है स्नैप पैकेज मैनेजर , आपको डॉक डेमन को प्रबंधित करने के लिए स्नैप कमांड का उपयोग करने की आवश्यकता होगी।

आम तौर पर, स्नैप स्वचालित रूप से उनकी सेवाओं का प्रबंधन करता है। हालांकि, इस त्रुटि जैसी स्थितियों में, इसे मैन्युअल हस्तक्षेप की आवश्यकता होगी। स्नैप कमांड के साथ आप जिन कुछ तर्कों का उपयोग कर सकते हैं उनमें स्टॉप, स्टार्ट और रीस्टार्ट शामिल हैं। हमारे मामले में, हम प्रारंभ पैरामीटर का उपयोग करेंगे।

  1. टर्मिनल खोलें और नीचे दिए गए कमांड को निष्पादित करें डॉकर शुरू करो
सूदो स्नैप स्टार्ट डॉकटर
डॉकटर प्रारंभ करें

डॉकटर प्रारंभ करें

2. नीचे दिए गए आदेश को निष्पादित करें सत्यापित करें यदि वह डॉकर सेवा शुरू की गई थी।

sudo snap सेवाएं

वो होगा सूची सब चल रहा है सेवाएं स्नैप करें

स्नैप सेवा

स्नैप सेवा

यदि उपरोक्त आदेश आपके लिए काम नहीं करते हैं, तो प्रयास करें डॉकिंग कनेक्ट करना: होम प्लग चूंकि यह डिफ़ॉल्ट रूप से ऑटो-कनेक्ट नहीं है। एक बार किया है, शुरू डॉकर सेवा

3. टर्मिनल लॉन्च करें और नीचे दिए गए कमांड चलाएं:

sudo snap connect docker: home: home sudo snap start docker
डॉकटर प्रारंभ करें

डॉकटर प्रारंभ करें

समाधान 6: रूट P के बिना उपयोगकर्ताओं के लिए Docker प्रारंभ करें rivileges

के कारण भी त्रुटि उत्पन्न हो सकती है उन्नत विशेषाधिकार की कमी और उपयोगकर्ता के पास / यूनिक्स: ///var/run/docker.sock तक पहुंच नहीं है। ’सौभाग्य से एक वर्कअराउंड है। हम 2375 पोर्ट के माध्यम से स्थानीय होस्ट को डॉकर होस्ट चर निर्यात करेंगे।

  1. टर्मिनल खोलें और नीचे कमांड चलाएँ:
निर्यात DOCKER_HOST = tcp: // localhost: 2375
DockerHost निर्यात करें

निर्यात डॉकर होस्ट

समाधान 7: डॉकर को पुनर्स्थापित करें

यदि उपरोक्त समाधान त्रुटि को हल नहीं करते हैं, तो एक उच्च संभावना है कि आपके पास स्थापना त्रुटियां हो सकती हैं। अपने लिनक्स सिस्टम में डॉकर को सही ढंग से स्थापित करने के लिए, निम्न चरणों का पालन करें डॉकर आधिकारिक वेबसाइट ।

4 मिनट पढ़ा