الموقع غير متصل بعد إعادة البناء (4 فبراير 2025)

لقد رأيت هذه الرسالة بعد إعادة بناء حديثة. ثم قمت بتشغيل ./launcher rebuild app، ولكن بعد ذلك، أصبحت نسختي غير قابلة للوصول. إنه تثبيت قياسي - كيف يمكنني تحديد ما حدث؟

أخطاء عند تشغيل ./launcher logs app

cd /var/discourse
./launcher logs app
تم اكتشاف بنية x86_64.
run-parts: executing /etc/runit/1.d/00-ensure-links
run-parts: executing /etc/runit/1.d/00-fix-var-logs
run-parts: executing /etc/runit/1.d/01-cleanup-web-pids
run-parts: executing /etc/runit/1.d/anacron
run-parts: executing /etc/runit/1.d/cleanup-pids
تنظيف ملفات PID القديمة
run-parts: executing /etc/runit/1.d/copy-env
run-parts: executing /etc/runit/1.d/letsencrypt
[Tue Feb  4 05:38:16 PM UTC 2025] لم تتغير النطاقات.
[Tue Feb  4 05:38:16 PM UTC 2025] تخطي، وقت التجديد التالي هو: 2025-03-02T20:15:28Z
[Tue Feb  4 05:38:16 PM UTC 2025] أضف '--force' للفرض على التجديد.
[Tue Feb  4 05:38:17 PM UTC 2025] تثبيت المفتاح في: /shared/ssl/mydomain.com.key
[Tue Feb  4 05:38:17 PM UTC 2025] تثبيت السلسلة الكاملة في: /shared/ssl/mydomain.com.cer
[Tue Feb  4 05:38:17 PM UTC 2025] تشغيل أمر إعادة التحميل: sv reload nginx
تحذير: nginx: غير قادر على فتح supervise/ok: الملف غير موجود
[Tue Feb  4 05:38:17 PM UTC 2025] خطأ إعادة التحميل لـ :
[Tue Feb  4 05:38:17 PM UTC 2025] لم تتغير النطاقات.
[Tue Feb  4 05:38:17 PM UTC 2025] تخطي، وقت التجديد التالي هو: 2025-03-02T20:15:33Z
[Tue Feb  4 05:38:17 PM UTC 2025] أضف '--force' للفرض على التجديد.
[Tue Feb  4 05:38:18 PM UTC 2025] تثبيت المفتاح في: /shared/ssl/mydomain.com_ecc.key
[Tue Feb  4 05:38:18 PM UTC 2025] تثبيت السلسلة الكاملة في: /shared/ssl/mydomain.com_ecc.cer
[Tue Feb  4 05:38:18 PM UTC 2025] تشغيل أمر إعادة التحميل: sv reload nginx
فشل: nginx: runsv ليس قيد التشغيل
[Tue Feb  4 05:38:18 PM UTC 2025] خطأ إعادة التحميل لـ :
بدأ runsvdir، PID هو 567
ok: run: redis: (pid 577) 0s
ok: run: postgres: (pid 581) 0s
nginx: [warn] امتداد مكرر "wasm"، نوع المحتوى: "application/wasm"، نوع المحتوى السابق: "application/wasm" في /etc/nginx/conf.d/discourse.conf:4
supervisor pid: 575 unicorn pid: 607
جارٍ الإيقاف
run-parts: executing /etc/runit/3.d/01-nginx
ok: down: nginx: 1s, normally up
run-parts: executing /etc/runit/3.d/02-unicorn
(575) exiting
ok: down: unicorn: 0s, normally up
run-parts: executing /etc/runit/3.d/10-redis
ok: down: redis: 1s, normally up
run-parts: executing /etc/runit/3.d/99-postgres
ok: down: postgres: 0s, normally up
ok: down: nginx: 5s, normally up
ok: down: postgres: 1s, normally up
ok: down: redis: 3s, normally up
ok: down: cron: 0s, normally up
ok: down: unicorn: 4s, normally up
ok: down: rsyslog: 0s, normally up
run-parts: executing /etc/runit/1.d/00-ensure-links
run-parts: executing /etc/runit/1.d/00-fix-var-logs
run-parts: executing /etc/runit/1.d/01-cleanup-web-pids
run-parts: executing /etc/runit/1.d/anacron
run-parts: executing /etc/runit/1.d/cleanup-pids
تنظيف ملفات PID القديمة
run-parts: executing /etc/runit/1.d/copy-env
run-parts: executing /etc/runit/1.d/letsencrypt
[Tue Feb  4 05:58:32 PM UTC 2025] لم تتغير النطاقات.
[Tue Feb  4 05:58:32 PM UTC 2025] تخطي، وقت التجديد التالي هو: 2025-03-02T20:15:28Z
[Tue Feb  4 05:58:32 PM UTC 2025] أضف '--force' للفرض على التجديد.
[Tue Feb  4 05:58:32 PM UTC 2025] تثبيت المفتاح في: /shared/ssl/mydomain.com.key
[Tue Feb  4 05:58:32 PM UTC 2025] تثبيت السلسلة الكاملة في: /shared/ssl/mydomain.com.cer
[Tue Feb  4 05:58:32 PM UTC 2025] تشغيل أمر إعادة التحميل: sv reload nginx
فشل: nginx: runsv ليس قيد التشغيل
[Tue Feb  4 05:58:32 PM UTC 2025] خطأ إعادة التحميل لـ :
[Tue Feb  4 05:58:32 PM UTC 2025] لم تتغير النطاقات.
[Tue Feb  4 05:58:32 PM UTC 2025] تخطي، وقت التجديد التالي هو: 2025-03-02T20:15:33Z
[Tue Feb  4 05:58:32 PM UTC 2025] أضف '--force' للفرض على التجديد.
[Tue Feb  4 05:58:32 PM UTC 2025] تثبيت المفتاح في: /shared/ssl/mydomain.com_ecc.key
[Tue Feb  4 05:58:32 PM UTC 2025] تثبيت السلسلة الكاملة في: /shared/ssl/mydomain.com_ecc.cer
[Tue Feb  4 05:58:32 PM UTC 2025] تشغيل أمر إعادة التحميل: sv reload nginx
فشل: nginx: runsv ليس قيد التشغيل
[Tue Feb  4 05:58:32 PM UTC 2025] خطأ إعادة التحميل لـ :
بدأ runsvdir، PID هو 561
ok: run: redis: (pid 575) 0s
nginx: [warn] امتداد مكرر "wasm"، نوع المحتوى: "application/wasm"، نوع المحتوى السابق: "application/wasm" في /etc/nginx/conf.d/discourse.conf:4
ok: run: postgres: (pid 580) 1s
supervisor pid: 570 unicorn pid: 601
جارٍ الإيقاف
run-parts: executing /etc/runit/3.d/01-nginx
ok: down: nginx: 0s, normally up
run-parts: executing /etc/runit/3.d/02-unicorn
(570) exiting
ok: down: unicorn: 1s, normally up
run-parts: executing /etc/runit/3.d/10-redis
ok: down: redis: 0s, normally up
run-parts: executing /etc/runit/3.d/99-postgres
ok: down: postgres: 0s, normally up
ok: down: nginx: 3s, normally up
ok: down: postgres: 1s, normally up
ok: down: redis: 1s, normally up
ok: down: cron: 0s, normally up
ok: down: unicorn: 3s, normally up
ok: down: rsyslog: 0s, normally up
run-parts: executing /etc/runit/1.d/00-ensure-links
run-parts: executing /etc/runit/1.d/00-fix-var-logs
run-parts: executing /etc/runit/1.d/01-cleanup-web-pids
run-parts: executing /etc/runit/1.d/anacron
run-parts: executing /etc/runit/1.d/cleanup-pids
تنظيف ملفات PID القديمة
run-parts: executing /etc/runit/1.d/copy-env
run-parts: executing /etc/runit/1.d/letsencrypt
[Tue Feb  4 06:01:07 PM UTC 2025] لم تتغير النطاقات.
[Tue Feb  4 06:01:07 PM UTC 2025] تخطي، وقت التجديد التالي هو: 2025-03-02T20:15:28Z
[Tue Feb  4 06:01:07 PM UTC 2025] أضف '--force' للفرض على التجديد.
[Tue Feb  4 06:01:07 PM UTC 2025] تثبيت المفتاح في: /shared/ssl/mydomain.com.key
[Tue Feb  4 06:01:07 PM UTC 2025] تثبيت السلسلة الكاملة في: /shared/ssl/mydomain.com.cer
[Tue Feb  4 06:01:07 PM UTC 2025] تشغيل أمر إعادة التحميل: sv reload nginx
فشل: nginx: runsv ليس قيد التشغيل
[Tue Feb  4 06:01:07 PM UTC 2025] خطأ إعادة التحميل لـ :
[Tue Feb  4 06:01:07 PM UTC 2025] لم تتغير النطاقات.
[Tue Feb  4 06:01:07 PM UTC 2025] تخطي، وقت التجديد التالي هو: 2025-03-02T20:15:33Z
[Tue Feb  4 06:01:07 PM UTC 2025] أضف '--force' للفرض على التجديد.
[Tue Feb  4 06:01:07 PM UTC 2025] تثبيت المفتاح في: /shared/ssl/mydomain.com_ecc.key
[Tue Feb  4 06:01:07 PM UTC 2025] تثبيت السلسلة الكاملة في: /shared/ssl/mydomain.com_ecc.cer
[Tue Feb  4 06:01:07 PM UTC 2025] تشغيل أمر إعادة التحميل: sv reload nginx
فشل: nginx: runsv ليس قيد التشغيل
[Tue Feb  4 06:01:07 PM UTC 2025] خطأ إعادة التحميل لـ :
بدأ runsvdir، PID هو 561
ok: run: redis: (pid 575) 0s
ok: run: postgres: (pid 576) 0s
nginx: [warn] امتداد مكرر "wasm"، نوع المحتوى: "application/wasm"، نوع المحتوى السابق: "application/wasm" في /etc/nginx/conf.d/discourse.conf:4
supervisor pid: 570 unicorn pid: 601
(570) exiting
nginx: [warn] امتداد مكرر "wasm"، نوع المحتوى: "application/wasm"، نوع المحتوى السابق: "application/wasm" في /etc/nginx/conf.d/discourse.conf:4
3 إعجابات

كل شيء كان يسير بسلاسة. رأيت ما يلي وأعدت البناء. اكتمل البناء بدون أخطاء، لكن موقعي لن يفتح.

-------------------------------------------------------------------------------------
ترقية بوستجريس مكتملة

قاعدة البيانات القديمة 13 مخزنة في /shared/postgres_data_old

لإكمال التحديث، أعِد البناء مرة أخرى باستخدام:

./ launcher rebuild app
-------------------------------------------------------------------------------------

عند تشغيل هذا
tail /var/discourse/shared/standalone/log/var-log/postgres/current
الناتج

2025-02-04 18:11:50.943 UTC [573] LOG:  إغلاق
2025-02-04 18:11:50.945 UTC [573] LOG:  بدء نقطة المراقبة: إغلاق فوري
2025-02-04 18:11:50.970 UTC [573] LOG:  اكتمال نقطة المراقبة: كتب 139 مخزن مؤقت (0.0%); 0 ملفات WAL أضيفت، 0 أزيلت، 0 أعيد تدويرها; الكتابة=0.017 ث، التزامن=0.005 ث، الإجمالي=0.027 ث؛ ملفات التزامن=27، الأطول=0.002 ث، المتوسط=0.001 ث؛ المسافة=410 كB، التقدير=410 كB
2025-02-04 18:11:51.034 UTC [547] LOG:  تم إغلاق نظام قاعدة البيانات
2025-02-04 18:15:04.302 UTC [548] LOG:  بدء PostgreSQL 15.10 (Debian 15.10-1.pgdg120+1) على x86_64-pc-linux-gnu، مُجمّع بواسطة gcc (Debian 12.2.0-14) 12.2.0
2025-02-04 18:15:04.303 UTC [548] LOG:  الاستماع على عنوان IPv4 "0.0.0.0"، المنفذ 5432
2025-02-04 18:15:04.303 UTC [548] LOG:  الاستماع على عنوان IPv6 "::"، المنفذ 5432
2025-02-04 18:15:04.305 UTC [548] LOG:  الاستماع على مقبس Unix "/var/run/postgresql/.s.PGSQL.5432"
2025-02-04 18:15:04.313 UTC [575] LOG:  تم إغلاق نظام قاعدة البيانات في 2025-02-04 18:14:37 UTC
2025-02-04 18:15:04.318 UTC [548] LOG:  نظام قاعدة البيانات جاهز لقبول الاتصالات

أيضًا, ./launcher logs app يعطيني هذا المخرج

x86_64 تم الكشف عنه.
تشغيل: تنفيذ /etc/runit/1.d/00-ensure-links
تشغيل: تنفيذ /etc/runit/1.d/00-fix-var-logs
تشغيل: تنفيذ /etc/runit/1.d/01-cleanup-web-pids
تشغيل: تنفيذ /etc/runit/1.d/anacron
تشغيل: تنفيذ /etc/runit/1.d/cleanup-pids
تنظيف ملفات PID القديمة
تشغيل: تنفيذ /etc/runit/1.d/copy-env
تشغيل: تنفيذ /etc/runit/1.d/letsencrypt
[الثلاثاء 4 فبراير 2025 06:15:03 مساءً UTC] النطاقات لم تتغير.
[الثلاثاء 4 فبراير 2025 06:15:03 مساءً UTC] تخطي، الوقت التالي للتجديد هو: 2025-02-09T00:30:10Z
[الثلاثاء 4 فبراير 2025 06:15:03 مساءً UTC] إضافة '--force' لفرض التجديد.
[الثلاثاء 4 فبراير 2025 06:15:03 مساءً UTC] تثبيت المفتاح في: /shared/ssl/forum.myforum.com.key
[الثلاثاء 4 فبراير 2025 06:15:03 مساءً UTC] تثبيت السلسلة الكاملة في: /shared/ssl/forum.myforum.com.cer
[الثلاثاء 4 فبراير 2025 06:15:03 مساءً UTC] تشغيل أمر إعادة التحميل: sv reload nginx
تحذير: nginx: غير قادر على فتح supervise/ok: الملف غير موجود
[الثلاثاء 4 فبراير 2025 06:15:03 مساءً UTC] خطأ في إعادة التحميل:
[الثلاثاء 4 فبراير 2025 06:15:03 مساءً UTC] النطاقات لم تتغير.
[الثلاثاء 4 فبراير 2025 06:15:03 مساءً UTC] تخطي، الوقت التالي للتجديد هو: 2025-02-09T00:30:15Z
[الثلاثاء 4 فبراير 2025 06:15:03 مساءً UTC] إضافة '--force' لفرض التجديد.
[الثلاثاء 4 فبراير 2025 06:15:04 مساءً UTC] تثبيت المفتاح في: /shared/ssl/forum.myforum.com_ecc.key
[الثلاثاء 4 فبراير 2025 06:15:04 مساءً UTC] تثبيت السلسلة الكاملة في: /shared/ssl/forum.myforum.com_ecc.cer
[الثلاثاء 4 فبراير 2025 06:15:04 مساءً UTC] تشغيل أمر إعادة التحميل: sv reload nginx
تحذير: nginx: غير قادر على فتح supervise/ok: الملف غير موجود
[الثلاثاء 4 فبراير 2025 06:15:04 مساءً UTC] خطأ في إعادة التحميل:
بدأ تشغيل runsvdir، PID هو 537
صحيح: تشغيل: redis: (pid 552) 0ث
صحيح: تشغيل: postgres: (pid 548) 0ث
nginx: [تحذير] الامتداد المكرر "wasm"، نوع المحتوى: "application/wasm"، نوع المحتوى السابق: "application/wasm" في /etc/nginx/conf.d/discourse.conf:4
مُشرف pid: 546 نيرون pid: 579
إعجابَين (2)

يحدث هذا على موقعي المستضافين ذاتيًا أيضًا، بعد التحديث من سطر الأوامر اليوم. هذه تثبيتات قياسية جدًا بدون تخصيص أو إضافات غير رسمية، ويتم تحديثها بانتظام، وعادةً ما يتم التحديث دون صعوبة.

أنا حاليًا أجرب اقتراحات @mwaniki أعلاه وسأرى كيف تسير الأمور، وسأبلغ عن النتائج هنا.

إعجابَين (2)

لقد قمت بإعادة بناء التطبيق مرة أخرى، وتم الانتهاء من التحديث بنجاح، ولكن على الرغم من عدم ظهور أي أخطاء، لا يمكن الوصول إلى الموقع. أي فكرة؟

./launcher logs app


تحذير: Docker version 20.10.12 deprecated، يوصى بالترقية إلى 24.0.7 أو أحدث.
تم اكتشاف بنية x86_64.
تحذير: ملف containers/app.yml قابل للقراءة من قبل الجميع. يمكنك تأمين هذا الملف عن طريق تشغيل: chmod o-rwx containers/app.yml
run-parts: executing /etc/runit/1.d/00-ensure-links
run-parts: executing /etc/runit/1.d/00-fix-var-logs
run-parts: executing /etc/runit/1.d/01-cleanup-web-pids
run-parts: executing /etc/runit/1.d/anacron
run-parts: executing /etc/runit/1.d/cleanup-pids
تنظيف ملفات PID القديمة
run-parts: executing /etc/runit/1.d/copy-env
run-parts: executing /etc/runit/1.d/letsencrypt
[Tue Feb 4 07:12:15 PM UTC 2025] لم تتغير النطاقات.
[Tue Feb 4 07:12:15 PM UTC 2025] تخطي، وقت التجديد التالي هو: 2025-03-06T00:39:07Z
[Tue Feb 4 07:12:15 PM UTC 2025] أضف "--force" لفرض التجديد.
[Tue Feb 4 07:12:16 PM UTC 2025] تثبيت المفتاح في: /shared/ssl/forum.******.com.key
[Tue Feb 4 07:12:16 PM UTC 2025] تثبيت السلسلة الكاملة في: /shared/ssl/forum.*****.com.cer
[Tue Feb 4 07:12:16 PM UTC 2025] تشغيل أمر إعادة التحميل: sv reload nginx
تحذير: nginx: غير قادر على فتح supervise/ok: الملف غير موجود
[Tue Feb 4 07:12:16 PM UTC 2025] خطأ في إعادة التحميل لـ:
[Tue Feb 4 07:12:16 PM UTC 2025] لم تتغير النطاقات.
[Tue Feb 4 07:12:16 PM UTC 2025] تخطي، وقت التجديد التالي هو: 2025-03-06T00:39:11Z
[Tue Feb 4 07:12:16 PM UTC 2025] أضف "--force" لفرض التجديد.
[Tue Feb 4 07:12:16 PM UTC 2025] تثبيت المفتاح في: /shared/ssl/forum.*****.com_ecc.key
[Tue Feb 4 07:12:16 PM UTC 2025] تثبيت السلسلة الكاملة في: /shared/ssl/forum.ü_ecc.cer
[Tue Feb 4 07:12:16 PM UTC 2025] تشغيل أمر إعادة التحميل: sv reload nginx
تحذير: nginx: غير قادر على فتح supervise/ok: الملف غير موجود
[Tue Feb 4 07:12:16 PM UTC 2025] خطأ في إعادة التحميل لـ:
تم تشغيل runsvdir، PID هو 535
ok: run: redis: (pid 545) 0s
nginx: [warn] امتداد مكرر "wasm"، نوع المحتوى: "application/wasm"، نوع المحتوى السابق: "application/wasm" في /etc/nginx/conf.d/discourse.conf:4
ok: run: postgres: (pid 548) 0s
supervisor pid: 542 unicorn pid: 575
إعجابَين (2)

أعتقد أن “الموقع لا يستجيب على الإطلاق” غير مرتبط بتحديث postgres. أبحث في الأمر الآن :eyes:

5 إعجابات

أنا أنتظر بفارغ الصبر حل هذه المشكلة. أتلقى مئات رسائل البريد الإلكتروني من مستخدميَّ يسألون لماذا لا يمكنهم الوصول إلى المنتدى :frowning:

4 إعجابات

عذرًا على الإزعاج للجميع! الإصلاح متاح الآن، لذا فإن تشغيل ./launcher rebuild app مرة أخرى يجب أن يعيد الأمور إلى وضعها الطبيعي.

يرجى إخبارنا إذا كنت لا تزال تواجه أي مشكلات بعد ذلك.

13 إعجابًا

في العمل :slight_smile:

4 إعجابات

yuppy يعمل المنتدى عاد للحياة. شكراً على الحل السريع. لهذا نحب Discourse :heart:

4 إعجابات

شكراً لإصلاح هذا! لقد أمضيت أيضًا الساعتين الماضيتين في محاولة معرفة الخطأ الذي حدث في إعادة البناء الخاصة بي. كل شيء على ما يرام الآن!

ملاحظة وصفية: عند البحث عن المشكلة في هذا المنتدى، فإن الفرز الافتراضي “الملاءمة” لنتائج بحث المنتدى لم يكن في صالحي. كانت سجلات الأخطاء التي بحثت فيها متطابقة تمامًا مع هنا، ولكن هذا الموضوع الأخير ظهر فقط بعد عدة صفحات في قائمة النتائج (ربما بسبب حداثته). لذلك، لم أعثر على هذا الموضوع حتى فتحت صفحة البداية الخاصة بالمنتدى بشكل عشوائي حيث كان شائعًا. أعتقد أن هذه ملاحظة لنفسي/للآخرين للتحقق أيضًا من الصفحة الرئيسية أو أحدث النتائج أثناء محاولة البحث عن مشكلة إعادة بناء مستقبلية.

6 إعجابات

هذه ملاحظات رائعة! لاحظ أن هذه المحادثة كانت تجري في الأصل على PostgreSQL 15 update حتى أدرك ديفيد أنها لا تتعلق بتحديث PostgreSQL ونقل المشاركات ذات الصلة إلى موضوع جديد. حدث ذلك قبل حوالي ساعة فقط، لذلك لم يكن بإمكانك العثور عليها إلا بعد ذلك!

يُعد استكشاف أخطاء التحديثات الفاشلة صعبًا بشكل سيئ السمعة - ويزداد الأمر صعوبة لأن تحديث Discourse عادة ما يكون سلسًا جدًا، لذلك لا يتعين على معظمنا الذين يستضيفون ذاتيًا تعلم كيفية عمل Discourse من الداخل وتعلم خطوات استكشاف الأخطاء وإصلاحها!

أقدر لك يا @david بحثك في هذا الأمر وإيجاد الحل بسرعة!

3 إعجابات

لقد قمت بتحديث docker من التطبيق المحمول، ثم تلقيت الرسالة المزعجة “go update via console”، والتي تشير عادةً إلى تحديات قادمة.

لقد اتبعت جميع خطوات التحديث اليدوية، وفشل إعادة بناء التطبيق باستخدام المشغل في كل مرة.

أنا قادر على الاستعادة باستخدام بدء تشغيل التطبيق عبر المشغل، لذا فإن الموقع يعمل.

ليس من الواضح بالنسبة لي ما إذا كان هذا مرتبطًا بأخطاء postgres، أو أين قد أواجه مشكلات.

إعجابَين (2)

هذا يشير إلى أنها ليست نفس المشكلة التي تمت مناقشتها في هذا الموضوع.
بالنسبة لهذه المشكلة، كانت إعادة البناء تنجح دون أخطاء، لكن الموقع كان يفشل في التحميل. لم يساعد ./launcher start.

لذلك أقترح فتح موضوع دعم جديد بتفاصيل حول الخطأ الذي تراه.

إعجابَين (2)

تمت إعادة تشغيل موقعي بعد إعادة البناء. شكراً! :+1:

4 إعجابات

في النهاية كانت مشكلة في فهم القراءة من جانبي، يمكنني تأكيد أن المشكلة كانت عدم إيقاف قاعدة بيانات Postgres بشكل صحيح. بمجرد اتباعي للإرشادات الصحيحة، عاد كل شيء للعمل. شكراً للجميع، من الجيد أن يكون هناك مكان يمكن اللجوء إليه عندما تسوء الأمور وأصاب بالذعر قليلاً، حيث يوجد هنا أشخاص أكثر هدوءًا للمساعدة.

شكراً جزيلاً!!!

7 إعجابات

لا يعمل معي

إعجابَين (2)

إذن لا بد أن يكون مشكلة مختلفة. يرجى فتح موضوع دعم جديد بالتفاصيل وسنحاول المساعدة قدر المستطاع.

لتجنب الالتباس، سأغلق هذا الموضوع، حيث تم حل المشكلة المحددة هذه.