प्रॉक्सी होस्ट, प्रमाणपत्र, एक्सेस सूचियाँ, आपका व्यवस्थापक खाता - ये सभी दो फ़ोल्डर हैं। बैकअप के लिए यह अद्भुत खबर है, जब तक कि उन्हें रखने वाली डिस्क बिना बैकअप के खत्म न हो जाए।
एनपीएम एक नियंत्रण कक्ष की तरह लगता है, लेकिन इसके नीचे सराहनीय रूप से सरल है: एक छोटा SQLite डेटाबेस और प्रमाणपत्र फ़ाइलों का एक फ़ोल्डर। इसका बैकअप लेना कोई प्रोजेक्ट नहीं है - यह एक ही डिस्क की तुलना में दो फ़ोल्डर्स को कहीं अधिक सुरक्षित जगह पर कॉपी करना है। यह पृष्ठ दिखाता है कि वास्तव में क्या कॉपी करना है, डेटाबेस द्वारा जोड़ी गई एक टाइमिंग सूक्ष्मता, और पुनर्स्थापना परीक्षण जो बैकअप को आशा से अलग करता है। इसे आज ही करें, जबकि यह अभी भी अनावश्यक लगता है।
आपने जो कुछ भी बनाया है वह उस फ़ोल्डर में बैठता है जिसमें आपका docker-compose.yml है। data फ़ोल्डर में SQLite डेटाबेस फ़ाइल (आपके होस्ट, उपयोगकर्ता, एक्सेस सूचियाँ और सेटिंग्स), जेनरेट की गई nginx कॉन्फ़िगरेशन और लॉग शामिल हैं। letsencrypt फ़ोल्डर में प्रत्येक प्रमाणपत्र और उसकी कुंजियाँ शामिल हैं। कंपोज़ फ़ाइल स्वयं सेट को पूरा करती है - यह छवि और सटीक पोर्ट और वॉल्यूम लेआउट को रिकॉर्ड करती है। तीनों को एक साथ कॉपी करें, और एक प्रतिस्थापन सर्वर को समान स्थिति में फिर से बनाया जा सकता है। यह डॉकर-कंपोज़ स्टाइल इंस्टाल का महान संरचनात्मक लाभ है: मशीन पर कहीं भी कोई सेटिंग नहीं छुपी होती है।
एक डेटाबेस जो लिखा जा रहा है जब आप उसे कॉपी करते हैं तो वह वाक्य के बीच में ही गंतव्य पर पहुंच सकता है। SQLite मजबूत है और एक लाइव कॉपी आम तौर पर बची रहती है - लेकिन 'आम तौर पर' उस फ़ोल्डर के लिए एक खराब आधार है जिससे आपके पूरे नेटवर्क के दरवाजे लटकते हैं। साफ़ पैटर्न में एक अतिरिक्त मिनट लगता है: कंटेनर को docker compose stop से रोकें, दो फ़ोल्डरों को कॉपी करें, फिर docker compose start। आपकी साइटें फ़ाइल कॉपी की अवधि के लिए रुक जाती हैं, और बैकअप पूरी तरह से सुसंगत है। इसे एक शांत घंटे के लिए शेड्यूल करें, यदि आप चाहें तो इसे स्क्रिप्ट करें, लेकिन क्रम में स्टॉप रखें।
एक ही डिस्क पर बैकअप बिल्कुल एक दुर्घटना से बचाता है: आप स्वयं कुछ हटा रहे हैं। यह किसी मृत डिस्क, मृत मशीन, चोरी या सर्वर तक पहुंचने वाले रैंसमवेयर के लिए कुछ नहीं करता है। कॉपी को अलग-अलग हार्डवेयर पर भेजें - एक NAS, दूसरा कंप्यूटर, एक बाहरी ड्राइव जो ड्रॉअर में वापस जाती है, या एक एन्क्रिप्टेड क्लाउड फ़ोल्डर। दिनांकित संस्करण रखें, एक भी अधिलेखित प्रति नहीं: यदि पिछले सप्ताह कोई बुरा परिवर्तन या शांत भ्रष्टाचार हुआ है, तो पिछले सप्ताह का बैकअप वह है जिसकी आप प्रार्थना करेंगे। तीन से पाँच दिनांकित प्रतियों की लागत लगभग कुछ भी नहीं होती; ये फ़ाइलें छोटी हैं.
जो बैकअप आपने कभी बहाल नहीं किया है वह अफवाह है। एक बार, एक अतिरिक्त मशीन या वीएम पर, पूरी ड्रिल करें: डॉकर इंस्टॉल करें, कंपोज़ फ़ाइल और अपने दो फ़ोल्डर्स डालें, docker compose up -d चलाएँ, और पैनल खोलें। आपके होस्ट, प्रमाणपत्र और व्यवस्थापक लॉगिन सभी वहां होने चाहिए। इसे समय दें - अधिकांश लोग पंद्रह मिनट से कम समय में काम पूरा कर लेते हैं, और उस संख्या को जानने से भविष्य की डिस्क मृत्यु एक आपदा से एक कार्य में बदल जाती है। प्रमाणपत्र फ़ाइलों के साथ पुनर्स्थापित होते हैं, इसलिए जब तक DNS अभी भी नए घर पर इंगित करता है, तब तक किसी भी पुनः जारी करने की आवश्यकता नहीं है।
कैलेंडर या छोटी शेड्यूल स्क्रिप्ट के साथ बैकअप को एक आदत बना लें: रुकें, फ़ोल्डर नाम में तारीख के साथ कॉपी करें, शुरू करें, हो गया। जब भी आप कई नए होस्ट जोड़ते हैं तो इसे दोबारा देखें - आपकी पिछली पांच सेवाओं के अस्तित्व में आने से पहले का बैकअप पूर्ण बैकअप के नाम पर आंशिक बैकअप होता है। और फ़ोल्डर की एक प्रति को इमारत में मौजूद किसी स्थान पर संग्रहीत करें, क्योंकि जो आपदाएं सर्वर और उसके डेस्क-दराज ड्राइव को एक साथ ले जाती हैं, वे बिल्कुल वही होती हैं जिनके बारे में बीमा फॉर्म पूछते हैं।
वीडियो सेटअप बनाता है; यह पृष्ठ इसे जीवित रहने योग्य बनाता है। वीडियो के साथ पंद्रह मिनट और यहां दस मिनट और एक मृत डिस्क एक गैर-घटना बन जाती है।
▶️ Watch Full Videoहाँ, यदि DNS पुनर्स्थापित सर्वर पर इंगित करता है। प्रमाणपत्र फ़ाइलें और उनकी कुंजियाँ Letencrypt फ़ोल्डर में रहती हैं और उसके साथ चलती हैं, और पुनर्स्थापित डेटा फ़ोल्डर से नवीनीकरण जारी रहता है।
छोटा - आम तौर पर कुछ दसियों मेगाबाइट, ज्यादातर डेटा के अंदर लॉग होता है। आप कॉपी करने से पहले पुराने लॉग को ट्रिम कर सकते हैं, लेकिन इस आकार में, दिनांकित प्रतियां रखने में लगभग कुछ भी खर्च नहीं होता है।
Letencrypt फ़ोल्डर भाग समान है, लेकिन डेटाबेस अब डेटाबेस सर्वर में रहता है, डेटा में नहीं। उचित डेटाबेस डंप के साथ उसका भी बैकअप लें - अकेले फ़ोल्डर में अब आपका पूरा सेटअप नहीं रह जाता है।