‫حسنا. الآن بعد أن تعلمت كل شيء عن وحدات التخزين وعمليات ربط الربط ، ولماذا
‫نحتاج إلى القلق بشأن البيانات المستمرة ، فلنقم بشيء يمثل سيناريو في العالم الحقيقي ، وهو ترقيات قاعدة البيانات.
‫تخيل موقفًا تقوم فيه بتشغيل إصدار معين من قاعدة البيانات.
‫لنفترض postgres ، وتحتاج إلى تحديث إصدار التصحيح لأنه ربما يكون هناك إصلاح أمني أو إصلاح
‫خطأ أو شيء من هذا القبيل.
‫عادةً ما تقوم بتحديث البرنامج على النظام. ستعمل على تحديث أو ترقية نظام إدارة الحزم
‫، وستتعامل مع جميع التحديثات للمكتبات وكل شيء بمفرده.
‫لكن كيف نفعل ذلك في وعاء؟
‫لأنه إذا كنا نحاول اتباع أفضل الممارسات المتمثلة في عدم تحديث التطبيقات في الحاويات ، بل
‫استبدال الحاوية بإصدار جديد ، فكيف نفعل ذلك بقاعدة البيانات؟
‫ما ستفعله لهذه المهمة هو أنك ستستخدم Docker Hub لتزويدك ببعض المعلومات حول تحديث
‫الإصدار المحدد من postgres. سنبدأ معك على وجه التحديد في إنشاء
‫حاوية باستخدام الإصدار 9. 6. 1 ، وهو إصدار أقدم. وستحتاج إلى إنشاء مجلد مسمى.
‫سيتعين عليك الاعتماد على وثائق Docker Hub لهذا الغرض ، باستخدام مستودع postgres الرسمي.
‫ستحتاج إلى الدخول إلى Dockerfile لهذا الإصدار المحدد ومعرفة ما يجب
‫أن يكون عليه مسار وحدة التخزين. ثم يمكنك تسمية وحدة التخزين الخاصة بك ما تريده على الجانب الأيسر.
‫لكن تذكر أن النقطتين على الجانب الأيمن منه ، يجب أن يكون المسار حيث ستكون قواعد البيانات
‫الفعلية في الحاوية.
‫بمجرد الانتهاء من فهم كل ذلك وبدء الحاوية الخاصة بك ، يجب أن تبدأ في التحقق من السجلات لمعرفة متى
‫تنتهي من إنشاء قواعد البيانات وجميع عناصر بدء التشغيل. نظرًا لأن المرة الأولى التي تبدأ فيها حاوية
‫قاعدة بيانات ، فإنها عادةً ما تقوم بمجموعة من الأشياء في الخلفية ، مثل إنشاء
‫المستخدم المسؤول ، وقاعدة بيانات افتراضية ، وما إلى ذلك.
‫ستكون هناك نقطة ستتوقف فيها السجلات وبعد ذلك ستعمل.
‫إذا قمت بذلك بشكل صحيح ، فستتمكن من عمل وحدة تخزين docker ls ومشاهدة وحدة التخزين المدرجة هناك ، بالاسم الذي أعطيته لها ،
‫ويجب أن تكون قادرًا على إيقاف هذه الحاوية. ثم ستنشئ حاوية جديدة
‫بإصدار جديد.
‫سيكون أمرًا مشابهًا جدًا للأمر الأول ، أنت فقط تحدد إصدارًا مختلفًا ، وستتأكد
‫أيضًا من أنك تريد تحديد حجم الاسم نفسه لأنه يحتاج إلى استخدام البيانات التي استخدمتها
‫في الإصدار الأول.
‫بالطبع ، تأكد من إيقاف أول واحد لأن كلاهما لا يمكنه الوصول إلى نفس
‫البيانات في نفس الوقت.
‫بمجرد بدء تشغيله ، امض قدمًا وتحقق من السجلات مرة أخرى لتلك الحاوية الجديدة.
‫ما يجب أن تراه هو أنه يحتوي على سطرين فقط من سجلات بدء التشغيل لأنه لا يتعين عليه القيام
‫بكل أعمال بدء التشغيل الأولي.
‫هذا نوع من الطريقة التي تعرف بها أنه يستخدم نفس الحجم المسمى
‫هو أنه في المرة الثانية التي يبدأ فيها ، قد يحتوي فقط على أربعة أو خمسة إدخالات سجل.
‫إذن هذا سيناريو من العالم الحقيقي.
‫ستفعل ذلك إذا قمت بتشغيل قواعد بيانات إنتاج أو أي شيء تحتاج إلى مواكبة التطورات.
‫لاحظ أن معظم أنظمة قواعد البيانات لا تجري ترقيات رئيسية تلقائيًا.
‫عادة ما يتطلب أداة. مع postgres أو MySQL ، هناك أداة منفصلة لكل منها
‫يجب عليك تشغيلها.
‫هذا في الواقع يتعلق فقط بترقية إصدارات التصحيح أو الرقم الأخير الذي لا يتطلب
‫تغييرات في المخطط أو أي تحديثات رئيسية لرمز البيانات نفسه.
‫كما هو الحال من قبل
‫، إذا واجهتك مشكلة ، فلا داعي للقلق لأن هذا شيء جديد وقد لا يكون واضحًا في Docker Hub.
‫إذا واجهتك مشكلة في مرحلة ما ولم يساعدك Docker Hub في الخروج
‫، فما عليك سوى التحقق من المحاضرة التالية ، وهي أنني أمارس هذا التمرين نفسه كما أفعل.
‫حظا طيبا وفقك الله.