لقد قمت بتحميل النسخة الاحتياطية الخاصة بي عبر SSH إلى محرك التخزين الجديد وهي لا تظهر في قسم المسؤول.\n\nملف app.yml الخاص بي يبدو كالتالي وفقًا للتعليمات هنا - https://meta.discourse.org/t/moving-uploads-and-backups-to-digitalocean-block-storage/89274\n\n\n```\n## حاوية Docker عديمة الحالة؛ يتم تخزين جميع البيانات في /shared\nvolumes:\n - volume:\n host: /mnt/volume_lon1_01/shared/standalone\n guest: /shared\n - volume:\n host: /mnt/volume_lon1_01/shared/standalone/log/var-log\n guest: /var/log\n - volume:\n host: /var/postgres_data_discourse\n guest: /shared/postgres_data\n```\n\nهذا يسبب لي صداعًا…
هل قمت بإعادة بناء التطبيق بعد تغيير/إضافة تلك القيم؟
نعم، لقد أعدت بناء التطبيق بعد إجراء التغييرات
ما هو المجلد المفترض أن يكون؟
النسخ الاحتياطي أم النسخ الاحتياطي/الافتراضي؟
حاليًا، النسخة الاحتياطية موجودة في /backups
سأحاول استعادته عبر سطر الأوامر اليوم إذا لم أتمكن من جعله يظهر في واجهة المستخدم
هذا هو المكان. يمكنك عمل نسخة احتياطية لمعرفة مكان تخزينها.
إنها نفس الشفرة البرمجية لذلك لن يتغير شيء
لقد قمت بعمل نسخة احتياطية للتو ولكني لا أجدها في أي مكان، تظهر السجلات..
[2022-03-01 10:05:53] التأكد من وجود '/var/www/discourse/public/backups/default'...
لكنها غير موجودة! أين يمكن أن تكون النسخة الاحتياطية؟
اعتقدت أن النسخة الاحتياطية ستكون على محرك التخزين الجديد، ما الذي أغفله هنا؟
هل يجب أن يقوم ./launcher rebuild app بإعادة بناء المنتدى في كل مرة؟
لا يمكنني تحميل أي شيء، صور وما إلى ذلك أيضًا، أكره أن هذا يكسر دائمًا البناء الخاص بي عندما أتبع ما أشعر أنه يجب أن يكون أدلة لائقة للقيام بالأشياء، لقد أردت فقط إضافة بعض التخزين إلى استضافتي الحالية، والآن أنا بدون موقع ويب، إنه أمر محبط للغاية ![]()
بدأت مرة أخرى باستخدام “الدليل الرسمي” سأقوم بإنشاء لقطة عند تثبيتها حتى أتمكن من التراجع إذا لزم الأمر
هذا هو المسار داخل الحاوية.
أعتقد أن النسخ الاحتياطي يجب أن يكون في
/mnt/volume_lon1_01/shared/standalone/backups/default
خارج الحاوية.
هذا ما اعتقدته ولكنه لم يكن موجودًا أيضًا، ولم أتمكن من تحميل أي شيء إلى المنشورات أو الصور وما إلى ذلك، بل حصلت على خطأ، لا أعتقد أن هذا الدليل للتخزين يعمل
هل نقلت كل تلك الأشياء إلى الموقع الجديد؟ ماذا ترى في
/mnt/volume_lon1_01/shared/standalone
و/أو
/mnt/volume_lon1_01/shared/
لقد اتبعت البرنامج التعليمي بالضبط وكان كل شيء في هذا الموقع، لقد بدأت من جديد الآن.
هذا ما فعلته:
- اتبعت هذا الدليل هنا: discourse/docs/INSTALL-cloud.md at main · discourse/discourse · GitHub
- قمت بتحميل النسخة الاحتياطية الخاصة بي عبر SSH إلى backups/default
- أنشأت لقطة لهذه النقطة حتى أتمكن من التراجع إذا حدث خطأ ما
- لدي وحدة تخزين مثبتة في
/mnt/جاهزة للنقل، عندما نقلت الدلائل في المرة الأخيرة واجهت المشاكل التالية:- لم يتم حفظ النسخة الاحتياطية في مجلد النسخ الاحتياطي الجديد للوحدة (في الواقع لم أتمكن من العثور عليه على الإطلاق)
- فشلت تحميلات الصور، أفترض أنها بسبب عدم قدرتها على التحميل إلى الوحدة الجديدة لأي سبب كان.
هل تم اختبار التحميلات والنسخ الاحتياطي باستخدام هذا البرنامج التعليمي هنا @techAPJ Move Uploads and Backups to DigitalOcean Block Storage
بالإضافة إلى كل هذا، اضطررت للانتظار لـ letsencrypt، أعتقد أن هذا يستغرق أسبوعًا لأنني لم أدرك أن إعادة البناء ستحاول الحصول على شهادة جديدة في كل مرة، لذلك استنفدت محاولاتي، لا يمكنني الوصول إلى الموقع على الإطلاق حتى أحصل على شهادات SSL، يعمل http لدقيقة واحدة ولكنه يجبر بعد ذلك على https مما يعني أنني لا أستطيع التسجيل.
لقد استخدمت هذه الأوامر كما ذكر البرنامج التعليمي:
mv /var/discourse/shared/standalone/postgres_data /var/postgres_data_discourse
mv /var/discourse/shared /mnt/volume_lon1_01
هذا محبط. آسف. تبدو التعليمات صحيحة بالنسبة لي، ولكن هذا هو النوع من الأشياء التي إذا ارتكبت خطأً بسيطًا فلن تعمل.\n\nهل ترى الملفات إذا دخلت الحاوية ونظرت في /shared/؟\n\nيمكنك التحايل على حد Let’s Encrypt إذا قمت بـ إعداد Let’s Encrypt مع نطاقات متعددة.
لم أنقل أي شيء إلى وحدة التخزين الجديدة بعد، لكنني أريد بعض التوضيح لأنني اتبعت الخطوات بدقة ولم تنجح.
لا أفهم هذا المنشور على الإطلاق وقد انتهيت من العبث به في الوقت الحالي، سأنتظر فقط لأنه كما تقول، إنه أمر محبط، أريد فقط أن يعود موقعي ويعمل ولقطة منه قبل أن أفعل أي شيء آخر.
بالمناسبة @pfaffman شكراً لمساعدتك حتى الآن، أقدر ذلك كثيراً
إذًا لا يمكن أن يعمل، ولم تتبع التعليمات؛ طريقة أكثر أمانًا للقيام بذلك ستكون نسخ الأشياء إلى وحدة تخزين جديدة، حتى تتمكن من التبديل ذهابًا وإيابًا بسهولة أكبر. ربما تبدو التعليمات أكثر أمانًا إذا تضمنت نسخ الملفات ثم حذفها (وهو بالضبط ما يفعله mv لأنه ينتقل عبر الأقسام).
ربما لم تر هذا الجزء من منشوري؟
هذا يجعل الأمر أكثر منطقية!
أوصي بنسخ الملفات باستخدام rsync أو cp إلى القسم الجديد بدلاً من نقلها باستخدام mv، مما سيسهل العودة إلى الإعداد الأصلي إذا حدث خطأ ما. يمكنك بعد ذلك ببساطة
./launcher destroy app
./launcher start app
لمعرفة ما إذا كان الإعداد الجديد يعمل. والعودة إلى نسخة احتياطية من app.yml إذا لم يكن كذلك.
هذه فكرة ممتازة، شكراً لك. سأجرب هذا في أقرب وقت ممكن.