बाहरी ड्राइव पर कंटेनरों को स्टोर करने और चलाने के लिए डॉकर को कैसे बताएं

मैं उबंटू लिनक्स पर डॉकर चला रहा हूं । मेरे पास एक है Dockerfile यह कहीं और से बहुत सारे डेटा लाता है । मैं डाल दिया Dockerfile एक बाहरी ड्राइव पर जिसे मैंने स्थानीय फाइल सिस्टम (एक्सटी 4) पर माउंट किया है । फिर मैंने उस बाहरी ड्राइव फाइल सिस्टम के भीतर से बिल्ड चलाया ।

docker build -t mycontainer .

मैंने ड्राइव के उपयोग को देखा क्योंकि कंटेनर निर्माण कर रहा था । ड्राइव का सारा उपयोग संलग्न ड्राइव के बजाय रूट फाइल सिस्टम पर था ।

मैंने डॉकर रूट/बेस को बदलने पर कुछ लेख पढ़े हैं /var/lib/docker किसी अन्य स्थान पर, लेकिन अभी तक मुझे यह सब मिलता है docker.service: Failed with result 'exit-code'.

मैंने भी जोड़ने की कोशिश की -g options में /lib/systemd/system/docker.service फ़ाइल:

ExecStart=/usr/bin/dockerd -H fd://  # originalExecStart=/usr/bin/dockerd -g /new/path/docker -H fd://  # updated

इससे भी मदद नहीं मिली ।

मैं बाहरी ड्राइव का उपयोग करने के लिए डॉकर को कैसे बता सकता हूं?

कई चीजों ने मुझे यह काम करने में मदद की । सबसे पहले, मैं एक होम डायरेक्टरी में बाहरी फाइल सिस्टम को माउंट कर रहा था, जो कुछ अनुमतियों के मुद्दों का कारण बन सकता है । इसलिए मैंने फाइल सिस्टम को इसके तहत हटा दिया /mnt और अद्यतन अनुमतियाँ और स्वामित्व निम्नानुसार है:

# chown -R root:root /mnt/external-drive/docker-base# chmod 701 /mnt/external-drive/docker-base

फिर मैंने बनाया /etc/docker/daemon.json इन सामग्रियों के साथ फ़ाइल:

{    "graph": "/mnt/external-drive/docker-base"}

मैंने डॉकर सेवा को फिर से शुरू किया और सब ठीक लग रहा है । एक कर docker build और बाहरी ड्राइव सभी सामग्री प्राप्त कर रहा है ।