डॉकटर हेलो-वर्ल्ड नहीं चला सकते: डिवाइस के लिए माउंटपॉइंट नहीं मिला


12

नया करने के लिए।

में सॉफ्टवेयर प्रबंधन उपकरण से स्थापित डॉकटर mint 17

जब मैं दौड़ता docker run hello-worldहूं तो मुझे प्राप्त होता है:

FATA[0000] Error response from daemon: Cannot start container a6bcc1ede2c38cb6b020cf5ab35ebd51b64535af57fa44f5966c37bdf89c8781: [8] System error: mountpoint for devices not found 

जब मैं सेवा लॉग /var/log/upstart/docker.logदेखता हूं ( ) मैं देखता हूं:

ERRO[0617] Couldn't run auplink before unmount: exec: "auplink": executable file not found in $PATH 
ERRO[0617] Couldn't run auplink before unmount: exec: "auplink": executable file not found in $PATH 

: डॉक वर्जन

Client version: 1.6.2
Client API version: 1.18
Go version (client): go1.2.1
Git commit (client): 7c8fca2
OS/Arch (client): linux/amd64
Server version: 1.6.2
Server API version: 1.18
Go version (server): go1.2.1
Git commit (server): 7c8fca2
OS/Arch (server): linux/amd64

: डॉकटर जानकारी

Containers: 2
Images: 1
Storage Driver: aufs
 Root Dir: /var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 5
 Dirperm1 Supported: false
Execution Driver: native-0.2
Kernel Version: 3.13.0-24-generic
Operating System: Ubuntu 14.04.3 LTS
CPUs: 8
Total Memory: 15.6 GiB
Name: DWDEV-HOME-HBABAI
ID: K4GX:DTV6:547V:U3BO:YEOA:WVNU:NZEZ:L3GG:4W7U:IXNS:X3QK:5PVR
WARNING: No memory limit support
WARNING: No swap limit support

अपडेट करें:

स्थापित sudo apt-get install aufs-tools, पुनः आरंभ करने वाला docker सेवा। मुझे अब निम्न त्रुटि दिखाई नहीं दे रही है :

ERRO[0617] Couldn't run auplink before unmount: exec: "auplink": executable file not found in $PATH 

हालाँकि, लॉग में मैं देख रहा हूँ कि जब डॉक शुरू हो रहा है तो यह मुझे मेमोरी माउंट पॉइंट के बारे में चेतावनी दे रहा है:

INFO[0000] -job init_networkdriver() = OK (0)           
/var/run/docker.sock is up
WARN[0000] mountpoint for memory not found              
INFO[0000] Loading containers: start.         

मुझे लगता है कि यह cgroup के साथ क्या करना है ... लेकिन मुझे उस तकनीक (अभी तक) के बारे में कुछ नहीं पता है ...


ऐसा लगता है कि आपका प्रश्न फर्श पर गिर गया और टुकड़ों में टूट गया। कृपया इसे हमारे लिए एक साथ रखें।
स्कॉट

hba

जवाबों:


23

यह पता चला कि मुझे स्थापित करने की आवश्यकता है cgroup-lite। यह अंधेरे में एक शॉट था लेकिन मैंने इस जवाब का पालन ​​किया


तुम्हें पता है, मैं कुछ बिंदु पर पाया था कि अपने दम पर, फिर इसे भूल गया। अब आपका प्रश्न मिल गया जब मैं फिर से उसमें भाग गया और याद किया (और उत्थान किया)।
0xC0000022L

में डेबियन , इसी पैकेज कहा जाता है cgroupfs माउंट
बास

1

मैं 2020 में डेबियन पर इसे देखने वाले लोगों के लिए एक और जवाब जोड़ूंगा, क्योंकि इस समस्या का समाधान किसी भी खोज हिट में मौजूद नहीं था जब त्रुटि स्ट्रिंग "डिवाइसों के लिए माउंटपॉइंट नहीं मिला"।

पृष्ठभूमि:

  • Google क्लाउड प्लेटफ़ॉर्म पर चलने वाला डेबियन 8.11
  • 5 सप्ताह पहले एक काम करने वाले डॉकटर ने दो कंटेनरों को चलाया

अचानक एहसास हुआ कि कुछ कंटेनरों को दुर्घटनाग्रस्त कर दिया था। एकमात्र ऐसा संभावित संभावित कारण जिसके साथ मैं आ सकता था, वह यह था कि मैंने होस्ट पर एक पैरेंट फोल्डर डिलीट कर दिया था, जिसमें वॉल्यूम के रूप में एक सबफ़ोल्डर मैप किया गया था। एक और कारण एक अतिरिक्त भौतिक उपकरण का बढ़ना हो सकता है।

किसी भी मामले में अंतिम परिणाम यह था कि किसी भी डॉकटर कंटेनर को शुरू करने की कोशिश करने के परिणामस्वरूप प्रश्न (" mountpoint for devices not found") में देखा गया त्रुटि संदेश और कोई रिबूट (और इसलिए कर्नेल का उन्नयन) हुआ था।

इस मुद्दे को हटाने के लिए मैंने जो कदम उठाए, वह था

  1. लॉग का निरीक्षण करें journalctl -xn | less:। वास्तव में बहुत अधिक अतिरिक्त जानकारी नहीं थी
  2. डॉकर डेमॉन ( /etc/init.d/docker stop) बंद करो ।
  3. एक फ़ाइल जोड़ें /etc/docker/daemon.jsonजिसमें एकमात्र सामग्री थी{"debug": true}
  4. असफल होने के लिए केवल डॉक डेमॉन को पुनः आरंभ करने का प्रयास करें
  5. लॉग का निरीक्षण करें, जो अब बहुत अधिक जानकारी से भरा होगा

ये cgroupसंबंधित त्रुटियां थीं जिनके कारण उत्तर मिला:

Jan 13 20:17:15 dev-diffia-no dockerd[9022]: time="2020-01-13T20:17:15.964631675Z" level=warning msg="Your kernel does not support cgroup memory limit"
Jan 13 20:17:15 dev-diffia-no dockerd[9022]: time="2020-01-13T20:17:15.964654637Z" level=warning msg="Unable to find cpu cgroup in mounts"
Jan 13 20:17:15 dev-diffia-no dockerd[9022]: time="2020-01-13T20:17:15.964667575Z" level=warning msg="Unable to find blkio cgroup in mounts"
Jan 13 20:17:15 dev-diffia-no dockerd[9022]: time="2020-01-13T20:17:15.964680057Z" level=warning msg="Unable to find cpuset cgroup in mounts"
Jan 13 20:17:15 dev-diffia-no dockerd[9022]: time="2020-01-13T20:17:15.964750643Z" level=warning msg="mountpoint for pids not found"
Jan 13 20:17:15 dev-diffia-no dockerd[9022]: time="2020-01-13T20:17:15.980250151Z" level=debug msg="Cleaning up old mountid : start."
Jan 13 20:17:15 dev-diffia-no dockerd[9022]: Error starting daemon: Devices cgroup isn't mounted

ठीक है, कुछ के बारे में cgroupsऔर बढ़ते। इसने मुझे इस मामले में लागू किए जा सकने वाले अलग-अलग cgroups मुद्दे के लिए एक वर्कअराउंड पर ले जाया , जिसमें से केवल वही कमांड थे जिनका प्रभाव लगता था।

  1. /etc/init.d/docker stop
  2. cgroupfs-mount
  3. /etc/init.d/docker start

अब, डॉकर को फिर से शुरू करने पर, लॉग में अभी भी cgroup संबंधित त्रुटियों की कुछ पंक्तियाँ थीं:

Jan 13 20:24:42 dev-diffia-no dockerd[9775]: time="2020-01-13T20:24:42.258571633Z" level=warning msg="Your kernel does not support cgroup memory limit"
Jan 13 20:24:42 dev-diffia-no dockerd[9775]: time="2020-01-13T20:24:42.258591020Z" level=warning msg="Unable to find cpu cgroup in mounts"
Jan 13 20:24:42 dev-diffia-no dockerd[9775]: time="2020-01-13T20:24:42.258937091Z" level=warning msg="mountpoint for pids not found"

लेकिन उनमें से आधे ( blkio, cpuset) चले गए थे, और इससे भी महत्वपूर्ण बात, अगली पंक्ति पढ़ी गई:

Jan 13 20:24:42 dev-diffia-no dockerd[9775]: time="2020-01-13T20:24:42.259420798Z" level=info msg="Loading containers: start."

और अंत में

Unit docker.socket has finished starting up.

तो, मूल रूप से, cgroup सामान को रिमूव करते हुए समस्या को ठीक किया गया। रिबूट करने की आवश्यकता नहीं है।

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