Postgres قديم على Docker Image مع حاويتين: web و data

مرحبًا بالجميع،

أنا عالق في محاولة ترقية نسخة Discourse تعمل عبر Docker. أحصل على الخطأ التالي عند محاولة إعادة البناء أو التمهيد أو إعداد الحاوية بأي طريقة أخرى:

I, [2020-11-18T15:23:37.357104 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake plugin:pull_compatible_all'
I, [2020-11-18T15:23:40.298932 #1]  INFO -- : discourse-slack-official is already at latest compatible version
docker_manager is already at latest compatible version

I, [2020-11-18T15:23:40.299193 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
rake aborted!
StandardError: An error has occurred, all later migrations canceled:

PG::SyntaxError: ERROR:  syntax error at or near "NOT"
LINE 2: ADD COLUMN IF NOT EXISTS image_upload_id bigint
                      ^

من خلال التحقيق، يبدو أن PostgreSQL 12 مطلوب لأحدث إصدار من Discourse، لكن هذا غير مُضمَّن حاليًا في صورة Docker الرسمية.

يبدو أن هناك فرعًا للتطوير في المستودع خاص بـ بناء الحاوية مع PostgreSQL 12، لكن لا توجد طلبات دمج مفتوحة أو أي شيء آخر…

كيف يمكنني إصلاح/تحديث تثبيت Discourse الخاص بي؟ مسار التحديث غير صحيح، والآن أنا أبذل قصارى جهدي لإعادة رفع المنتديات في أسرع وقت ممكن!

إعجابَين (2)

ملاحظة إضافية: فرع pg12 لا يعمل أيضًا (على الرغم من أنه يبدو أنه يحاول تنزيل إصدار حاوية مختلف)، ولا تزال تظهر نفس الرسالة الخطأ عند تنفيذ db:migrate…

هذا غير صحيح. تحتوي الصورة الأساسية لـ Discourse على PostgreSQL منذ أشهر عديدة، منذ تحديث PostgreSQL 12.

هل يمكنك مشاركة ملف app.yml الخاص بك؟ ربما أجبرت على استخدام صورة أساسية قديمة فيه ونسيت ذلك؟

إعجابَين (2)

ما هو عمر نسخة discourse_docker التي قمت بتحميلها؟ أعرف أن سكريبت launcher مصمم لتحديث نفسه تلقائيًا، لكن قد يكون من الجيد تشغيل أمر git pull يدويًا للتأكد من ذلك.

أحدث صورة أساسية يجب أن تكون:

image="discourse/base:2.0.20201004-2310"

ماذا ستحصل عليه إذا شغلت الأمر التالي:

docker images | grep discourse/base

أيضًا، تم إيقاف هذا الإضافة عن العمل منذ 3 سنوات :scream:

إعجابَين (2)

غريب، أنا على أحدث إصدار:

$ git branch -v
* master 4a4b0f8 DOCS: correct syntax error in readme

ويبدو أن لدي أحدث صورة:

$ docker images
REPOSITORY             TAG                 IMAGE ID            CREATED             SIZE
discourse/base         2.0.20201004-2310   b64c37d7ab06        6 weeks ago         2.4GB
local_discourse/data   latest              253fd4d68068        3 years ago         1.7GB

لقد تأكدت من إزالة صور Docker القديمة وحاولت إعادة بناء تطبيق web عدة مرات.

آه، هل يجب أن أعيد بناء حاوية data أولاً أم شيء من هذا القبيل؟ لم أقم باللمس عليها بعد

كما أن تلك الإضافة تم إيقاف دعمها منذ 3 سنوات :scream:

:see_no_evil: هذا هو التالي في قائمتي لتحديثه، لكنني عالق مع التحديث الحالي!

أوه، هل تستخدم إعداد البيانات المتقدم؟

يجب عليك إيقاف الويب وإعادة بناء البيانات لتحديث جميع برامج البيانات. يوجد قسم مخصص لذلك في PostgreSQL 12 update

8 إعجابات

شكرًا لمساعدتك، جاري إعادة بناء حاوية data الآن…

حسنًا، يبدو أن هذا قد نجح، شكرًا لكم مرة أخرى!

هذا هو نوع الحرق المتوقع عند استلام تثبيت Discourse وإجراء ترقية لأول مرة :sweat_smile:

4 إعجابات

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.