डोकर डेमॉन हैंगिंग - गुम कंटेनर स्टेट फाइल?


2

मैं एडब्ल्यूएस लिनक्स पर डॉकर 1.12.6 चला रहा हूं।

सभी dockerकमांड हैंग हो जाते हैं।

AWS का उदाहरण आज सुबह दुर्घटनाग्रस्त हो गया (फिर भी पता नहीं क्यों)। रिबूट काम नहीं करता था इसलिए मैंने रोक दिया और उदाहरण शुरू किया। जब मुझे /var/log/dockerलगता है कि मुझे मिलता है:

time="2017-01-16T10:46:18.829402768Z" level=info msg="libcontainerd: new containerd process, pid: 21697" 
time="2017-01-16T10:46:18.833508272Z" level=fatal msg="open /var/run/docker/libcontainerd/containerd/054f92393f757e0418b014ed1fa35673fbce2293de43e42153f4e10ec4910c77/state.json: no such file or directory"

कंटेनर निर्देशिका मौजूद है, लेकिन केवल एक खाली initनिर्देशिका है। अन्य कंटेनरों के माध्यम से एक यादृच्छिक खोज एक ही बात को दर्शाता है।

मुझे लगता है कि लापता फ़ाइल हैंग का कारण बन रही है। मैं कैसे ठीक होऊं?

संपादित करें:

हटाने के बाद समाप्त हुआ, फिर से इंस्टॉल किया गया, संदेश मिला:

Cannot connect to the Docker daemon. Is the docker daemon running on this host?

डॉकर सेवा शुरू की, अब यह फिर से लटका हुआ है।

जवाबों:


2

मैंने अपना हल निकाला

  1. सेवा कर्ता बंद करो
  2. / Var / run / docker पर जाएं और कंटेनर id से संबंधित किसी भी निर्देशिका को हटा दें
  3. / Var / lib / docker पर जाएं और कंटेनर id से संबंधित किसी भी निर्देशिका को हटा दें
  4. सेवा शुरू करने वाला

1

@ मोरेनो के जवाब ने मेरे लिए एक छोटे से मोड़ के साथ काम किया:

  • डॉकटर डेमन को रोकें ( sudo service docker stop)

  • कंटेनर में फ़ोल्डरों को हटाएं (केवल मामले में, हमने सीधे libconteinerd (/ var / run / docker / libcontainerd / containerd) में समान नाम वाले फ़ोल्डरों को हटा दिया है

  • डॉकटर डेमन शुरू करो


0

मैं एक ही मुद्दे में चला गया हूँ। इस पर उचित समय बिताने के बाद, मुझे पुराने एएमआई के लिए वापस रोल करना पड़ा है जो तब तक काम करता है जब तक कि मैं इसके लिए कोई समाधान नहीं ढूंढ सकता। नवीनतम ECS एजेंट (1.13.1) को कुछ दिन पहले जारी किया गया था - मैं सोच रहा था कि क्या यह हमारा मुद्दा हो सकता है।

अवलोकन:

  • Docker 1.12.6
  • ECS Agent 1.13.1

उदाहरण के लिए, सभी dockerकमांड हैंग हो जाते हैं। जाँच से /var/log/dockerपता चलता है:

level=info msg="libcontainerd: new containerd process, pid: 21687" 
level=fatal msg="open /var/run/docker/libcontainerd/containerd/{{CONTAINER_HASH}}/state.json: no such file or directory"

एक ही मुद्दा है जहाँ libcontainerdएक खाली initनिर्देशिका ( state.jsonदेखा नहीं जा सकता है!)


-1

एक ही समस्या में चलाएँ। उदाहरण दुर्घटनाग्रस्त हो गया (अज्ञात कारण)। डॉकर और ईसीएस एजेंट। पुनः स्थापना करने वाले ने मदद नहीं की।

हमारे लिए क्या काम किया:

  • कर्ता को मैन्युअल रूप से मारें (पिड को मारें)
  • कंटेनर में फ़ोल्डरों को हटाएं (केवल मामले में, हमने सीधे libconteinerd (/ var / run / docker / libcontainerd / containerd) में समान नाम वाले फ़ोल्डरों को हटा दिया है
  • कर्ता को पुनः स्थापित करें
  • शुरू करें

यहाँ देखें: https://github.com/docker/docker/issues/30984

सिस्टम फिर से चल रहा है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.