Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रणाली >> Linux

डिस्क स्पेस खाली करें: डॉकर वॉल्यूम को सुरक्षित रूप से बड़े पार्टीशन पर ले जाएं

डिफ़ॉल्ट रूप से, डॉकर "/var/lib/docker" के अंदर सब कुछ स्टोर करता है, जो रूट (/) पार्टीशन पर स्थित है। जैसे-जैसे आपके कंटेनर बढ़ते हैं, यह फ़ोल्डर तेजी से भर सकता है। यदि आप देखते हैं कि आपका सर्वर धीमा चल रहा है, डेटा सेव करने में विफल हो रहा है, या बेतरतीब ढंग से क्रैश हो रहा है, तो शायद ऐसा इसलिए है क्योंकि रूट पार्टीशन स्पेस से बाहर हो गया है। इस गाइड में, हम आपको अपने डॉकर वॉल्यूम (या डेटा) को दूसरे पार्टीशन पर ले जाने और रूट पार्टीशन में स्पेस खाली करने के तरीकों के बारे में बताएंगे।

विषय सूची

डॉकर वॉल्यूम को दूसरे पार्टीशन पर ले जाने की आवश्यकता क्यों है

डॉकर कंटेनर अक्सर बड़ी मात्रा में लगातार डेटा उत्पन्न करते हैं। समय के साथ, यह डेटा आपके रूट पार्टीशन के स्टोरेज स्पेस का उपभोग कर सकता है। डॉकर वॉल्यूम को दूसरे पार्टीशन पर ले जाने से आपको मदद मिलती है:

  • रूट फाइलसिस्टम पर स्पेस खाली करें
  • डिस्क थकावट के कारण सिस्टम क्रैश को रोकें
  • बड़े एप्लिकेशन डेटा को समर्पित स्टोरेज पर स्टोर करें
  • समग्र स्टोरेज प्रबंधन में सुधार करें

उदाहरण के लिए, MySQL या PostgreSQL जैसे डेटाबेस कंटेनर वॉल्यूम के भीतर गीगाबाइट्स डेटा स्टोर कर सकते हैं। उन वॉल्यूम को एक बड़े समर्पित पार्टीशन पर ले जाने से सिस्टम स्थिरता बनाए रखने में मदद मिल सकती है।

डॉकर वॉल्यूम डायरेक्टरी का पता लगाएं

डॉकर वॉल्यूम को ले जाने से पहले, हमें पहले यह पता लगाना होगा कि डॉकर इसे सिस्टम पर कहां स्टोर करता है। सभी उपलब्ध डॉकर वॉल्यूम सूचीबद्ध करने के लिए निम्न कमांड चलाएं:

docker volume ls
डिस्क स्पेस खाली करें: डॉकर वॉल्यूम को सुरक्षित रूप से बड़े पार्टीशन पर ले जाएं

वॉल्यूम नाम की पहचान करने के बाद, उस विशिष्ट वॉल्यूम का निरीक्षण करने के लिए नीचे दी गई कमांड चलाएं:

docker volume inspect volume_name

यह कमांड वॉल्यूम के बारे में विस्तृत जानकारी प्रदर्शित करती है। आउटपुट में, Mountpoint फ़ील्ड देखें। यह वह सटीक डायरेक्टरी दिखाता है जहां डॉकर वॉल्यूम डेटा स्टोर करता है।

डिस्क स्पेस खाली करें: डॉकर वॉल्यूम को सुरक्षित रूप से बड़े पार्टीशन पर ले जाएं

पूरे डॉकर डेटा रूट को ले जाएं

डॉकर डेटा को अलग पार्टीशन पर ले जाने का एक तरीका पूरे डॉकर स्टोरेज डायरेक्टरी को रीलोकेट करना है, जिसमें वॉल्यूम, इमेज, कंटेनर, और लॉग शामिल हैं। यदि "/var/lib/docker" भर रहा है तो यह सबसे साफ और सुरक्षित विधि है।

इस उद्देश्य के लिए, पहले, आपको डॉकर सेवा को रोकना होगा ताकि माइग्रेशन के दौरान कोई फाइल न बदले:

sudo systemctl stop docker

अगला, आप rsync कमांड का उपयोग करके डॉकर डेटा कॉपी कर सकते हैं:

sudo rsync -avxP /var/lib/docker/ /path/to/new/partition/docker-data/

नोट: "/path/to/new/partition/" को उस नए पार्टीशन के पथ में बदलें जहां आप फ़ोल्डर को माइग्रेट करना चाहते हैं।

यह कमांड अनुमतियों को संरक्षित करते हुए डॉकर डायरेक्टरी को कॉपी करती है और ट्रांसफर के दौरान प्रगति दिखाती है।

डिस्क स्पेस खाली करें: डॉकर वॉल्यूम को सुरक्षित रूप से बड़े पार्टीशन पर ले जाएं

वैकल्पिक रूप से, आप निम्न कमांड का उपयोग कर सकते हैं, जो हार्ड लिंक, ACLs, और एक्सटेंडेड एट्रिब्यूट्स जैसे अतिरिक्त डॉकर एट्रिब्यूट्स को संरक्षित करता है:

sudo rsync -aHAX --info=progress2 /var/lib/docker/ /mnt/docker-data/

यह संस्करण तब अनुशंसित है जब डॉकर डेटा माइग्रेट कर रहे हों क्योंकि यह अधिक फाइलसिस्टम मेटाडेटा को संरक्षित करता है और एक स्पष्ट समग्र प्रगति संकेतक प्रदान करता है।

इसके बाद, इसे हटाने से पहले पुराने डेटा डायरेक्टरी का नाम बदलकर बैकअप लें।

sudo mv /var/lib/docker /var/lib/docker.old

अब, इस कमांड के साथ डेमन फ़ाइल खोलकर डॉकर के कॉन्फ़िगरेशन को अपडेट करें:

sudo nano /etc/docker/daemon.json

इस फ़ाइल में निम्न सामग्री जोड़ें:

{ "data-root": "/path/to/new/partition/docker-data" }
डिस्क स्पेस खाली करें: डॉकर वॉल्यूम को सुरक्षित रूप से बड़े पार्टीशन पर ले जाएं

अंत में, sudo systemctl start docker के साथ डॉकर को पुनरारंभ करें। इसके बाद, आप निम्न कमांड के साथ नई डॉकर डेटा डायरेक्टरी की पुष्टि कर सकते हैं:

docker info | grep "Docker Root Dir"
डिस्क स्पेस खाली करें: डॉकर वॉल्यूम को सुरक्षित रूप से बड़े पार्टीशन पर ले जाएं

यदि सब कुछ ठीक है, तो पुराना बैकअप हटा दें:

sudo rm -rf /var/lib/docker.old

डॉकर डेस्कटॉप (GUI विधि) का उपयोग करके सभी डॉकर डेटा ले जाएं

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

ऐसा करने के लिए, डॉकर डेस्कटॉप खोलें और Settings पर नेविगेट करें, Resources → Advanced पर जाएं, और फिर Disk Image Location विकल्प ढूंढें।

डिस्क स्पेस खाली करें: डॉकर वॉल्यूम को सुरक्षित रूप से बड़े पार्टीशन पर ले जाएं

Browse पर क्लिक करें और नए पार्टीशन या ड्राइव पर एक फ़ोल्डर चुनें जहां आप डॉकर को अपना डेटा स्टोर करना चाहते हैं, जैसे "/mnt/newdisk/docker-data"। नया स्थान चुनने के बाद, Apply & Restart पर क्लिक करें। डॉकर डेस्कटॉप तब पुनरारंभ होगा और सभी मौजूदा डॉकर डेटा को चयनित पार्टीशन पर ले जाएगा।

डिस्क स्पेस खाली करें: डॉकर वॉल्यूम को सुरक्षित रूप से बड़े पार्टीशन पर ले जाएं

नोट: यह सभी डॉकर डेटा को ले जाता है। वर्तमान में व्यक्तिगत वॉल्यूम को ले जाने के लिए कोई GUI विकल्प नहीं है।

केवल विशिष्ट वॉल्यूम डेटा को रीलोकेट करें

आप एक विशिष्ट डॉकर वॉल्यूम को दूसरे पार्टीशन पर ले जा सकते हैं और इसे होस्ट बाइंड माउंट के माध्यम से अपने कंटेनर के साथ उपयोग कर सकते हैं। यह दृष्टिकोण सरल, सुरक्षित, और बैकअप करने में आसान है। वॉल्यूम को ले जाने से पहले, उस कंटेनर को रोकें जो इसका उपयोग करता है:

docker stop container_name

इसके बाद, सभी डेटा को सुरक्षित रूप से अपने नए डायरेक्टरी में ले जाने के लिए rsync का उपयोग करें:

sudo rsync -a /var/lib/docker/volumes/my_volume/_data/ /data/docker/my_volume/

यह पुराने वॉल्यूम से सब कुछ "/data/docker/my_volume" पर कॉपी करेगा।

अपनी "docker-compose.yml" फ़ाइल को एडिट करें ताकि डॉकर-मैनेज्ड वॉल्यूम के बजाय बाइंड माउंट का उपयोग किया जाए:

services: my_service: volumes: - /data/docker/my_volume:/container/path

/container/path को कंटेनर के अंदर उस पथ से बदलें जहां वॉल्यूम मूल रूप से माउंट किया गया था। फिर निम्न कमांड के साथ कंटेनर को पुनः तैनात करें:

docker-compose up -d

निष्कर्ष

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

यदि पूरे डॉकर डायरेक्टरी को रीलोकेट करना संभव नहीं है, तो आप अभी भी अन्य विधियों का उपयोग करके स्पेस पुनः प्राप्त कर सकते हैं। इनमें अप्रयुक्त कंटेनर, इमेज, नेटवर्क, और कैश को docker system prune या व्यक्तिगत prune कमांड के साथ प्रून करना शामिल है, और डॉकर के रनटाइम को प्रभावित किए बिना बड़े डायरेक्टरी को स्थानांतरित करने के लिए लिनक्स बाइंड माउंट का उपयोग करना शामिल है।

  1. लिनक्स के साथ अपने पुराने PC का उपयोग करने के 3 तरीके लिनक्स के साथ अपने पुराने PC का उपयोग करने के 3 तरीके

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

  1. अपने कंप्यूटर के स्क्रीन सेवर को वेबकैम से मोशन-सेंसिटिव कैसे बनाएं [Windows] अपने कंप्यूटर के स्क्रीन सेवर को वेबकैम से मोशन-सेंसिटिव कैसे बनाएं [Windows]

    संभावना है कि आप इस बात से कम से कम कुछ हद तक परेशान हों कि आपको अपने कंप्यूटर पर स्क्रीन सेवर से छुटकारा पाने के लिए माउस हिलाना पड़ता है या कीबोर्ड पर बटन दबाना पड़ता है। जब स्क्रीन सेवर बंद होता है, तो आपके डेस्कटॉप के दिखने में कुछ समय लगता है, यहां तक कि एक मिड-रेंज सिस्टम पर भी जो ठीक से काम क

  1. सत्यापित करें कि आपका विंडोज 10 32-बिट या 64-बिट है - यह क्यों मायने रखता है सत्यापित करें कि आपका विंडोज 10 32-बिट या 64-बिट है - यह क्यों मायने रखता है

    यह जांचना कि आपके पास 32-बिट या 64-बिट विंडोज इंस्टॉल है, मुश्किल नहीं है। यह जानना कि आपके पास कौन सा है, ऐप्स और हार्डवेयर के बारे में निर्णय लेते समय महत्वपूर्ण हो सकता है, हालांकि आज एक नया डिवाइस खरीदते समय आपको ज्यादा चिंता करने की आवश्यकता नहीं होनी चाहिए। यह पता लगाने के लिए कि आपके वर्तमान