إعادة بناء Discourse

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

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

إليك مخرجات إعادة البناء.

sudo ./launcher rebuild app
التأكد من أن برنامج التشغيل محدث
جلب المصدر
برنامج التشغيل محدث
إيقاف الحاوية القديمة
+ /usr/bin/docker stop -t 60 app
app
cd /pups && git pull && /pups/bin/pups --stdin
محدث بالفعل.
I, [2021-01-27T00:56:18.217397 #1]  INFO -- : تحميل --stdin
I, [2021-01-27T00:56:18.221386 #1]  INFO -- : > apt-get remove -y postgresql-10 postgresql-client-10 postgresql-contrib-10
I, [2021-01-27T00:56:19.014337 #1]  INFO -- : قراءة قوائم الحزم...
بناء شجرة الاعتمادات...
قراءة معلومات الحالة...
الحزمة 'postgresql-10' غير مثبتة، لذا لن تتم إزالتها
الحزمة 'postgresql-client-10' غير مثبتة، لذا لن تتم إزالتها
0 تم ترقية، 0 تم تثبيتها حديثًا، 0 سيتم إزالتها و 0 غير مرفوعة.

I, [2021-01-27T00:56:19.014524 #1]  INFO -- : > apt-get update && apt-get install -y postgresql-9.5 postgresql-client-9.5 postgresql-contrib-9.5
debconf: تأجيل تكوين الحزمة، لأن apt-utils غير مثبت
I, [2021-01-27T00:56:27.744372 #1]  INFO -- : Hit:1 http://deb.debian.org/debian buster InRelease
Get:2 http://security.debian.org/debian-security buster/updates InRelease [65.4 kB]
Get:3 https://deb.nodesource.com/node_10.x buster InRelease [4,584 B]
Get:4 http://security.debian.org/debian-security buster/updates/main amd64 Packages [270 kB]
Get:5 http://apt.postgresql.org/pub/repos/apt buster-pgdg InRelease [104 kB]
Get:6 http://deb.debian.org/debian buster-updates InRelease [51.9 kB]
Get:7 https://deb.nodesource.com/node_10.x buster/main amd64 Packages [766 B]
Get:8 http://deb.debian.org/debian buster-updates/main amd64 Packages.diff/Index [4,672 B]
Get:9 http://deb.debian.org/debian buster-updates/main amd64 Packages 2020-12-24-1401.30.pdiff [286 B]
Get:9 http://deb.debian.org/debian buster-updates/main amd64 Packages 2020-12-24-1401.30.pdiff [286 B]
Get:10 http://apt.postgresql.org/pub/repos/apt buster-pgdg/main amd64 Packages [217 kB]
تم جلب 718 kB في 1 ثانية (566 kB/s)
قراءة قوائم الحزم...
قراءة قوائم الحزم...
بناء شجرة الاعتمادات...
قراءة معلومات الحالة...
الحزم المقترحة:
  postgresql-doc-9.5 libdbd-pg-perl
سيتم تثبيت الحزم الجديدة التالية:
  postgresql-9.5 postgresql-client-9.5 postgresql-contrib-9.5
0 تم ترقية، 3 تم تثبيتها حديثًا، 0 سيتم إزالتها و 6 غير مرفوعة.
يلزم جلب 5,822 kB من الأرشيف.
بعد هذه العملية، سيتم استخدام 28.0 MB من مساحة القرص الإضافية.
Get:1 http://apt.postgresql.org/pub/repos/apt buster-pgdg/main amd64 postgresql-client-9.5 amd64 9.5.24-1.pgdg100+1 [1,290 kB]
Get:2 http://apt.postgresql.org/pub/repos/apt buster-pgdg/main amd64 postgresql-9.5 amd64 9.5.24-1.pgdg100+1 [4,066 kB]
Get:3 http://apt.postgresql.org/pub/repos/apt buster-pgdg/main amd64 postgresql-contrib-9.5 amd64 9.5.24-1.pgdg100+1 [465 kB]
تم جلب 5,822 kB في 2 ثانية (3,628 kB/s)
تحديد حزمة postgresql-client-9.5 غير المحددة سابقًا.
(قراءة قاعدة البيانات ... 43899 ملفًا ومجلدًا مثبتًا حاليًا.)
التحضير لفك ضغط .../postgresql-client-9.5_9.5.24-1.pgdg100+1_amd64.deb ...
فك ضغط postgresql-client-9.5 (9.5.24-1.pgdg100+1) ...
تحديد حزمة postgresql-9.5 غير المحددة سابقًا.
التحضير لفك ضغط .../postgresql-9.5_9.5.24-1.pgdg100+1_amd64.deb ...
فك ضغط postgresql-9.5 (9.5.24-1.pgdg100+1) ...
تحديد حزمة postgresql-contrib-9.5 غير المحددة سابقًا.
التحضير لفك ضغط .../postgresql-contrib-9.5_9.5.24-1.pgdg100+1_amd64.deb ...
فك ضغط postgresql-contrib-9.5 (9.5.24-1.pgdg100+1) ...
إعداد postgresql-client-9.5 (9.5.24-1.pgdg100+1) ...
update-alternatives: تحذير: فرض إعادة تثبيت البديل /usr/share/postgresql/13/man/man1/psql.1.gz لأن مجموعة الروابط psql.1.gz معطلة
إعداد postgresql-9.5 (9.5.24-1.pgdg100+1) ...
إنشاء مجموعة بيانات PostgreSQL جديدة 9.5/main ...
/usr/lib/postgresql/9.5/bin/initdb -D /var/lib/postgresql/9.5/main --auth-local peer --auth-host md5
ستُملَّك الملفات التابعة لنظام قاعدة البيانات هذا للمستخدم "postgres".
يجب أن يكون هذا المستخدم هو أيضًا مالك عملية الخادم.

سيتم تهيئة مجموعة البيانات مع اللغة المحلية "C.UTF-8".
تم تعيين ترميز قاعدة البيانات الافتراضي وفقًا لذلك إلى "UTF8".
سيتم تعيين تكوين البحث النصي الافتراضي إلى "english".

تم تعطيل تجزئات صفحات البيانات.

إصلاح الأذونات على المجلد الحالي /var/lib/postgresql/9.5/main ... تم
إنشاء مجلدات فرعية ... تم
اختيار max_connections الافتراضي ... 100
اختيار shared_buffers الافتراضي ... 128MB
اختيار المنطقة الزمنية الافتراضية ... Etc/UTC
اختيار تنفيذ الذاكرة المشتركة الديناميكية ... posix
إنشاء ملفات التكوين ... تم
إنشاء قاعدة بيانات template1 في /var/lib/postgresql/9.5/main/base/1 ... تم
تهيئة pg_authid ... تم
تهيئة الاعتمادات ... تم
إنشاء عروض النظام ... تم
تحميل أوصاف كائنات النظام ... تم
إنشاء ترجمات ... تم
إنشاء إنشاءات ... تم
إنشاء القواميس ... تم
تعيين الامتيازات على الكائنات المدمجة ... تم
إنشاء مخطط المعلومات ... تم
تحميل لغة الخادم PL/pgSQL ... تم
تفريغ قاعدة بيانات template1 ... تم
نسخ template1 إلى template0 ... تم
نسخ template1 إلى postgres ... تم
مزامنة البيانات مع القرص ... تم

نجاح. يمكنك الآن بدء تشغيل خادم قاعدة البيانات باستخدام:

    /usr/lib/postgresql/9.5/bin/pg_ctl -D /var/lib/postgresql/9.5/main -l logfile start

الإصدار المجموعة المنفذ الحالة المالك مجلد البيانات ملف السجل
9.5 main    5433 down   postgres /var/lib/postgresql/9.5/main /var/log/postgresql/postgresql-9.5-main.log
update-alternatives: تحذير: فرض إعادة تثبيت البديل /usr/share/postgresql/13/man/man1/postmaster.1.gz لأن مجموعة الروابط postmaster.1.gz معطلة
invoke-rc.d: تعذر تحديد مستوى التشغيل الحالي
invoke-rc.d: رفض سياسة policy-rc.d تنفيذ البدء.
إعداد postgresql-contrib-9.5 (9.5.24-1.pgdg100+1) ...
معالجة المحفزات لـ postgresql-common (223.pgdg100+1) ...
بناء قواميس PostgreSQL من حزم myspell/hunspell المثبتة...
إزالة ملفات القواميس القديمة:

I, [2021-01-27T00:56:27.744534 #1]  INFO -- : > mkdir -p /shared/postgres_run
I, [2021-01-27T00:56:27.746759 #1]  INFO -- :
I, [2021-01-27T00:56:27.746920 #1]  INFO -- : > chown postgres:postgres /shared/postgres_run
I, [2021-01-27T00:56:27.748670 #1]  INFO -- :
I, [2021-01-27T00:56:27.748817 #1]  INFO -- : > chmod 775 /shared/postgres_run
I, [2021-01-27T00:56:27.750312 #1]  INFO -- :
I, [2021-01-27T00:56:27.750445 #1]  INFO -- : > rm -fr /var/run/postgresql
I, [2021-01-27T00:56:27.752163 #1]  INFO -- :
I, [2021-01-27T00:56:27.752286 #1]  INFO -- : > ln -s /shared/postgres_run /var/run/postgresql
I, [2021-01-27T00:56:27.753733 #1]  INFO -- :
I, [2021-01-27T00:56:27.753861 #1]  INFO -- : > socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres already running stop container ; exit 1
2021/01/27 00:56:27 socat[1563] E connect(6, AF=1 "/shared/postgres_run/.s.PGSQL.5432", 36): لا يوجد ملف أو مجلد بهذا الاسم
I, [2021-01-27T00:56:27.757032 #1]  INFO -- :
I, [2021-01-27T00:56:27.757131 #1]  INFO -- : > rm -fr /shared/postgres_run/.s*
I, [2021-01-27T00:56:27.759113 #1]  INFO -- :
I, [2021-01-27T00:56:27.759211 #1]  INFO -- : > rm -fr /shared/postgres_run/*.pid
I, [2021-01-27T00:56:27.761112 #1]  INFO -- :
I, [2021-01-27T00:56:27.761207 #1]  INFO -- : > mkdir -p /shared/postgres_run/9.5-main.pg_stat_tmp
I, [2021-01-27T00:56:27.762768 #1]  INFO -- :
I, [2021-01-27T00:56:27.762914 #1]  INFO -- : > chown postgres:postgres /shared/postgres_run/9.5-main.pg_stat_tmp
I, [2021-01-27T00:56:27.764392 #1]  INFO -- :
I, [2021-01-27T00:56:27.767696 #1]  INFO -- : ملف > /etc/service/postgres/run  chmod: +x  chown:
I, [2021-01-27T00:56:27.770758 #1]  INFO -- : ملف > /etc/runit/3.d/99-postgres  chmod: +x  chown:
I, [2021-01-27T00:56:27.770945 #1]  INFO -- : > chown -R root /var/lib/postgresql/9.5/main
I, [2021-01-27T00:56:27.776379 #1]  INFO -- :
I, [2021-01-27T00:56:27.776453 #1]  INFO -- : > [ ! -e /shared/postgres_data ] && install -d -m 0755 -o postgres -g postgres /shared/postgres_data && sudo -E -u postgres /usr/lib/postgresql/9.5/bin/initdb -D /shared/postgres_data || exit 0
I, [2021-01-27T00:56:27.777801 #1]  INFO -- :
I, [2021-01-27T00:56:27.777850 #1]  INFO -- : > chown -R postgres:postgres /shared/postgres_data
I, [2021-01-27T00:56:27.783111 #1]  INFO -- :
I, [2021-01-27T00:56:27.783215 #1]  INFO -- : > chown -R postgres:postgres /var/run/postgresql
I, [2021-01-27T00:56:27.784767 #1]  INFO -- :
I, [2021-01-27T00:56:27.784941 #1]  INFO -- : استبدال data_directory = '/var/lib/postgresql/9.5/main' بـ data_directory = '/shared/postgres_data' في /etc/postgresql/9.5/main/postgresql.conf
I, [2021-01-27T00:56:27.785211 #1]  INFO -- : استبدال (?-mix:#?listen_addresses *=.*) بـ listen_addresses = '*' في /etc/postgresql/9.5/main/postgresql.conf
I, [2021-01-27T00:56:27.785927 #1]  INFO -- : استبدال (?-mix:#?synchronous_commit *=.*) بـ synchronous_commit = $db_synchronous_commit في /etc/postgresql/9.5/main/postgresql.conf
I, [2021-01-27T00:56:27.786670 #1]  INFO -- : استبدال (?-mix:#?shared_buffers *=.*) بـ shared_buffers = $db_shared_buffers في /etc/postgresql/9.5/main/postgresql.conf
I, [2021-01-27T00:56:27.787426 #1]  INFO -- : استبدال (?-mix:#?work_mem *=.*) بـ work_mem = $db_work_mem في /etc/postgresql/9.5/main/postgresql.conf
I, [2021-01-27T00:56:27.788428 #1]  INFO -- : استبدال (?-mix:#?default_text_search_config *=.*) بـ default_text_search_config = '$db_default_text_search_config' في /etc/postgresql/9.5/main/postgresql.conf
I, [2021-01-27T00:56:27.789053 #1]  INFO -- : > install -d -m 0755 -o postgres -g postgres /shared/postgres_backup
I, [2021-01-27T00:56:27.790832 #1]  INFO -- :
I, [2021-01-27T00:56:27.791033 #1]  INFO -- : استبدال (?-mix:#?checkpoint_segments *=.*) بـ checkpoint_segments = $db_checkpoint_segments في /etc/postgresql/9.5/main/postgresql.conf
I, [2021-01-27T00:56:27.791241 #1]  INFO -- : استبدال (?-mix:#?logging_collector *=.*) بـ logging_collector = $db_logging_collector في /etc/postgresql/9.5/main/postgresql.conf
I, [2021-01-27T00:56:27.791909 #1]  INFO -- : استبدال (?-mix:#?log_min_duration_statement *=.*) بـ log_min_duration_statement = $db_log_min_duration_statement في /etc/postgresql/9.5/main/postgresql.conf
I, [2021-01-27T00:56:27.792577 #1]  INFO -- : استبدال (?-mix:^#local +replication +postgres +peer$) بـ local replication postgres  peer في /etc/postgresql/9.5/main/pg_hba.conf
I, [2021-01-27T00:56:27.792744 #1]  INFO -- : استبدال (?-mix:^host.*all.*all.*127.*$) بـ host all all 0.0.0.0/0 md5 في /etc/postgresql/9.5/main/pg_hba.conf
I, [2021-01-27T00:56:27.793816 #1]  INFO -- : > HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/9.5/bin/postmaster -D /etc/postgresql/9.5/main
I, [2021-01-27T00:56:27.794896 #1]  INFO -- : > sleep 5
2021-01-27 00:56:27.803 UTC [1579] FATAL:  «/shared/postgres_data» ليس دليل بيانات صالحًا
2021-01-27 00:56:27.803 UTC [1579] DETAIL:  الملف «/shared/postgres_data/PG_VERSION» لا يحتوي على بيانات صالحة.
2021-01-27 00:56:27.803 UTC [1579] HINT:  قد تحتاج إلى تشغيل initdb.
I, [2021-01-27T00:56:32.796560 #1]  INFO -- :
I, [2021-01-27T00:56:32.796794 #1]  INFO -- : > su postgres -c 'createdb discourse' || true
createdb: خطأ: تعذر الاتصال بقاعدة بيانات template1: تعذر الاتصال بالخادم: لا يوجد ملف أو مجلد بهذا الاسم
        هل الخادم يعمل محليًا ويقبل
        الاتصالات على منفذ Unix «/var/run/postgresql/.s.PGSQL.5432»؟
I, [2021-01-27T00:56:32.831116 #1]  INFO -- :
I, [2021-01-27T00:56:32.831264 #1]  INFO -- : > su postgres -c 'psql discourse -c "create user discourse;"' || true
psql: خطأ: تعذر الاتصال بالخادم: لا يوجد ملف أو مجلد بهذا الاسم
        هل الخادم يعمل محليًا ويقبل
        الاتصالات على منفذ Unix «/var/run/postgresql/.s.PGSQL.5432»؟
I, [2021-01-27T00:56:32.870370 #1]  INFO -- :
I, [2021-01-27T00:56:32.870513 #1]  INFO -- : > su postgres -c 'psql discourse -c "grant all privileges on database discourse to discourse;"' || true
psql: خطأ: تعذر الاتصال بالخادم: لا يوجد ملف أو مجلد بهذا الاسم
        هل الخادم يعمل محليًا ويقبل
        الاتصالات على منفذ Unix «/var/run/postgresql/.s.PGSQL.5432»؟
I, [2021-01-27T00:56:32.908898 #1]  INFO -- :
I, [2021-01-27T00:56:32.909038 #1]  INFO -- : > su postgres -c 'psql discourse -c "alter schema public owner to discourse;"'
psql: خطأ: تعذر الاتصال بالخادم: لا يوجد ملف أو مجلد بهذا الاسم
        هل الخادم يعمل محليًا ويقبل
        الاتصالات على منفذ Unix «/var/run/postgresql/.s.PGSQL.5432»؟
I, [2021-01-27T00:56:32.947732 #1]  INFO -- :
I, [2021-01-27T00:56:32.947960 #1]  INFO -- : إنهاء العمليات غير المتزامنة


FAILED
--------------------
Pups::ExecError: فشل أمر su postgres -c 'psql discourse -c "alter schema public owner to discourse;"' مع رمز الخروج #<Process::Status: pid 1605 exit 2>
موقع الفشل: /pups/lib/pups/exec_command.rb:112:in `spawn'
فشل التنفيذ مع المعاملات "su postgres -c 'psql $db_name -c \"alter schema public owner to $db_user;\"'"
939070e4fa69fee27e24019c29559257d18d45800db622ff039dbf4eba4372f1
** فشل التمهيد ** يرجى التمرير للأعلى والبحث عن رسائل الأخطاء السابقة، قد يكون هناك أكثر من خطأ.
قد يساعد ./discourse-doctor في تشخيص المشكلة.

هل يمكنك مشاركة ملف app.yml (/var/discourse/containers/app.yml) بعد إزالة البيانات الحساسة؟

ubuntu@ip-10-0-5-81:/var/discourse_docker$ cat /var/discourse_docker/containers/app.yml
## هذا قالب حاوية Docker المستقلة الشاملة لـ Discourse
##
## بعد إجراء أي تعديلات على هذا الملف، يجب عليك إعادة البناء
## /var/discourse/launcher rebuild app
##
## كن *حذرًا للغاية* عند التحرير!
## ملفات YAML حساسة للغاية للأخطاء في المسافات البيضاء أو المحاذاة!
## قم بزيارة http://www.yamllint.com/ للتحقق من صحة هذا الملف عند الحاجة

templates:
  - "templates/postgres.9.5.template.yml"
  - "templates/redis.template.yml"
  - "templates/web.template.yml"
  - "templates/web.ratelimited.template.yml"
## قم بإلغاء التعليق عن هذين السطرين إذا كنت ترغب في إضافة Lets Encrypt (https)
  #- "templates/web.ssl.template.yml"
  #- "templates/web.letsencrypt.ssl.template.yml"

## ما هي منافذ TCP/IP التي يجب أن تعرضها هذه الحاوية؟
## إذا كنت تريد لـ Discourse مشاركة منفذ مع خادم ويب آخر مثل Apache أو nginx،
## راجع https://meta.discourse.org/t/17247 للحصول على التفاصيل
expose:
  - "80:80"   # http
  - "443:443" # https
  - "2222:22" # ssh

params:
  db_default_text_search_config: "pg_catalog.english"

  ## قم بتعيين db_shared_buffers إلى أقصى 25% من إجمالي الذاكرة.
  ## سيتم تعيينها تلقائيًا بواسطة bootstrap بناءً على ذاكرة الوصول العشوائي المكتشفة، أو يمكنك تجاوزها
  db_shared_buffers: "1792MB"

  ## يمكن أن يحسن أداء الفرز، لكنه يزيد من استخدام الذاكرة لكل اتصال
  #db_work_mem: "40MB"

  ## أي إصدار Git يجب أن تستخدمه هذه الحاوية؟ (الافتراضي: tests-passed)
  #version: tests-passed

env:
  LANG: en_US.UTF-8
  # DISCOURSE_DEFAULT_LOCALE: en

  ## كم عدد طلبات الويب المتزامنة المدعومة؟ يعتمد على الذاكرة ونوى المعالج.
  ## سيتم تعيينها تلقائيًا بواسطة bootstrap بناءً على المعالجات المكتشفة، أو يمكنك تجاوزها
  UNICORN_WORKERS: 4

  ## TODO: اسم النطاق الذي ستستجيب له هذه النسخة من Discourse
  ## مطلوب. لن يعمل Discourse مع عنوان IP عاري.
  DISCOURSE_HOSTNAME: 'discourse.frostbite.com'

  ## قم بإلغاء التعليق إذا كنت تريد بدء الحاوية بنفس اسم النطاق (-h option) المحدد أعلاه (الافتراضي "$hostname-$config")
  #DOCKER_USE_HOSTNAME: true

  ## TODO: قائمة عناوين البريد الإلكتروني المفصولة بفواصل سيتم تعيينها كمسؤول ومطور
  ## مثال عند التسجيل الأولي 'user1@example.com,user2@example.com'
  DISCOURSE_DEVELOPER_EMAILS: 'ipersson@frostbite.com'

  ## TODO: خادم البريد SMTP المستخدم للتحقق من الحسابات الجديدة وإرسال الإشعارات
  ## مطلوب عنوان SMTP واسم المستخدم وكلمة المرور
  ## تحذير: قد يتسبب حرف '#' في كلمة مرور SMTP في حدوث مشاكل!
  DISCOURSE_SMTP_ADDRESS: 'email-smtp.us-west-2.amazonaws.com'
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME: ''
  DISCOURSE_SMTP_PASSWORD: ''
  DISCOURSE_SMTP_ENABLE_START_TLS: true           # (اختياري، الافتراضي true)
  DISCOURSE_SMTP_AUTHENTICATION: 'login'

  DISCOURSE_DB_SOCKET: ''
  DISCOURSE_DB_NAME: 'discourse'
  DISCOURSE_DB_POOL: 15
  DISCOURSE_DB_USERNAME: 'discourse'
  DISCOURSE_DB_PASSWORD: ''
  DISCOURSE_DB_HOST: ''
  DISCOURSE_DB_PORT: '5432'
  DISCOURSE_REDIS_HOST: ''
  DISCOURSE_REDIS_PORT: '6379'

  ## إذا قمت بإضافة قالب Lets Encrypt، قم بإلغاء التعليق أدناه للحصول على شهادة SSL مجانية
  #LETSENCRYPT_ACCOUNT_EMAIL: me@example.com

  ## عنوان CDN http أو https لهذه النسخة من Discourse (مُهيأ لجلب)
  ## راجع https://meta.discourse.org/t/14857 للحصول على التفاصيل
  #DISCOURSE_CDN_URL: https://discourse-cdn.example.com

  ## مفتاح عنوان IP الخاص بـ maxmind للبحث عن عناوين IP
  ## راجع https://meta.discourse.org/t/-/137387/23 للحصول على التفاصيل
  #DISCOURSE_MAXMIND_LICENSE_KEY: 1234567890123456

## حاوية Docker لا تحتوي على حالة؛ يتم تخزين جميع البيانات في /shared
volumes:
  - volume:
      host: /var/discourse/shared/standalone
      guest: /shared
  - volume:
      host: /var/discourse/shared/standalone/log/var-log
      guest: /var/log

## تذهب الإضافات هنا
## راجع https://meta.discourse.org/t/19157 للحصول على التفاصيل
hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - mkdir -p plugins
          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-solved.git
          - git clone https://github.com/discourse/discourse-feature-voting.git

## أي أوامر مخصصة للتشغيل بعد البناء
run:
  - exec: echo "Beginning of custom commands"
  ## إذا كنت تريد تعيين عنوان البريد الإلكتروني 'من' لتسجيلك الأول، قم بإلغاء التعليق وتغيير:
  ## بعد الحصول على أول بريد إلكتروني للتسجيل، قم بإعادة التعليق على السطر. يحتاج إلى التشغيل مرة واحدة فقط.
  #- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
  - exec: echo "End of custom commands"
  - exec: awk -F\# '{print $1;}' ~/.ssh/authorized_keys | awk 'BEGIN { print "Authorized SSH keys for this container:"; } NF>=2 {print $NF;}'

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

إذن، هذا تثبيت قديم جدًا، ولم يرغب المسؤول الأخير عنه في التعامل مع ترقية PostgreSQL 10، لذا تركه مثبتًا على PostgreSQL 9.5.

يستخدم Discourse حاليًا PostgreSQL 13، لذا يجب عليك اتباع الخطوات التالية:

  1. قم بنسخ احتياطي.
  2. غيّر السطر في ملف app.yml
    من: - "templates/postgres.9.5.template.yml"
    إلى: - "templates/postgres.template.yml"
  3. أعد البناء واتبع التعليمات.

بما أنك تخطيت ترقيتين رئيسيتين لـ PostgreSQL منذ عام 2018، فقد تكون هذه العملية أكثر صعوبة من المعتاد.

شكرًا لك، لقد ساهم ذلك في دفع العملية قليلًا إلى الأمام، لكن للأسف لا يزال هناك خطأ يتعلق بـ psql

الجزء الأول

ubuntu@ip-10-0-5-81:/var/discourse_docker$ sudo git pull
Already up-to-date.
ubuntu@ip-10-0-5-81:/var/discourse_docker$ sudo ./launcher rebuild app
Ensuring launcher is up to date
Fetching origin
Launcher is up-to-date
Stopping old container
+ /usr/bin/docker stop -t 60 app
app
cd /pups && git pull && /pups/bin/pups --stdin
Already up to date.
I, [2021-01-27T02:23:32.961245 #1]  INFO -- : Loading --stdin
I, [2021-01-27T02:23:32.965383 #1]  INFO -- : > locale-gen $LANG && update-locale
I, [2021-01-27T02:23:32.987516 #1]  INFO -- : Generating locales (this might take a while)...
Generation complete.

I, [2021-01-27T02:23:32.987669 #1]  INFO -- : > mkdir -p /shared/postgres_run
I, [2021-01-27T02:23:32.989911 #1]  INFO -- :
I, [2021-01-27T02:23:32.990064 #1]  INFO -- : > chown postgres:postgres /shared/postgres_run
I, [2021-01-27T02:23:32.992027 #1]  INFO -- :
I, [2021-01-27T02:23:32.992154 #1]  INFO -- : > chmod 775 /shared/postgres_run
I, [2021-01-27T02:23:32.993583 #1]  INFO -- :
I, [2021-01-27T02:23:32.993702 #1]  INFO -- : > rm -fr /var/run/postgresql
I, [2021-01-27T02:23:32.995266 #1]  INFO -- :
I, [2021-01-27T02:23:32.995389 #1]  INFO -- : > ln -s /shared/postgres_run /var/run/postgresql
I, [2021-01-27T02:23:32.996948 #1]  INFO -- :
I, [2021-01-27T02:23:32.997071 #1]  INFO -- : > socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres already running stop container ; exit 1
2021/01/27 02:23:33 socat[28] E connect(6, AF=1 "/shared/postgres_run/.s.PGSQL.5432", 36): No such file or directory
I, [2021-01-27T02:23:33.000489 #1]  INFO -- :
I, [2021-01-27T02:23:33.000604 #1]  INFO -- : > rm -fr /shared/postgres_run/.s*
I, [2021-01-27T02:23:33.002633 #1]  INFO -- :
I, [2021-01-27T02:23:33.002731 #1]  INFO -- : > rm -fr /shared/postgres_run/*.pid
I, [2021-01-27T02:23:33.004812 #1]  INFO -- :
I, [2021-01-27T02:23:33.004925 #1]  INFO -- : > mkdir -p /shared/postgres_run/13-main.pg_stat_tmp
I, [2021-01-27T02:23:33.006528 #1]  INFO -- :
I, [2021-01-27T02:23:33.006672 #1]  INFO -- : > chown postgres:postgres /shared/postgres_run/13-main.pg_stat_tmp
I, [2021-01-27T02:23:33.008413 #1]  INFO -- :
I, [2021-01-27T02:23:33.011835 #1]  INFO -- : File > /etc/service/postgres/run  chmod: +x  chown:
I, [2021-01-27T02:23:33.014961 #1]  INFO -- : File > /etc/service/postgres/log/run  chmod: +x  chown:
I, [2021-01-27T02:23:33.018297 #1]  INFO -- : File > /etc/runit/3.d/99-postgres  chmod: +x  chown:
I, [2021-01-27T02:23:33.021412 #1]  INFO -- : File > /root/upgrade_postgres  chmod: +x  chown:
I, [2021-01-27T02:23:33.021632 #1]  INFO -- : > chown -R root /var/lib/postgresql/13/main
I, [2021-01-27T02:23:35.186494 #1]  INFO -- :
I, [2021-01-27T02:23:35.186619 #1]  INFO -- : > [ ! -e /shared/postgres_data ] && install -d -m 0755 -o postgres -g postgres /shared/postgres_data && sudo -E -u postgres /usr/lib/postgresql/13/bin/initdb -D /shared/postgres_data || exit 0
I, [2021-01-27T02:23:35.188812 #1]  INFO -- :
I, [2021-01-27T02:23:35.188877 #1]  INFO -- : > chown -R postgres:postgres /shared/postgres_data
I, [2021-01-27T02:23:35.194463 #1]  INFO -- :
I, [2021-01-27T02:23:35.194567 #1]  INFO -- : > chown -R postgres:postgres /var/run/postgresql
I, [2021-01-27T02:23:35.196238 #1]  INFO -- :
I, [2021-01-27T02:23:35.196378 #1]  INFO -- : > /root/upgrade_postgres
I, [2021-01-27T02:23:35.199668 #1]  INFO -- :
I, [2021-01-27T02:23:35.199784 #1]  INFO -- : > rm /root/upgrade_postgres
I, [2021-01-27T02:23:35.201235 #1]  INFO -- :
I, [2021-01-27T02:23:35.201464 #1]  INFO -- : Replacing data_directory = '/var/lib/postgresql/13/main' with data_directory = '/shared/postgres_data' in /etc/postgresql/13/main/postgresql.conf
I, [2021-01-27T02:23:35.201885 #1]  INFO -- : Replacing (?-mix:#?listen_addresses *=.*) with listen_addresses = '*' in /etc/postgresql/13/main/postgresql.conf
I, [2021-01-27T02:23:35.202816 #1]  INFO -- : Replacing (?-mix:#?synchronous_commit *=.*) with synchronous_commit = $db_synchronous_commit in /etc/postgresql/13/main/postgresql.conf
I, [2021-01-27T02:23:35.204224 #1]  INFO -- : Replacing (?-mix:#?shared_buffers *=.*) with shared_buffers = $db_shared_buffers in /etc/postgresql/13/main/postgresql.conf
I, [2021-01-27T02:23:35.205139 #1]  INFO -- : Replacing (?-mix:#?work_mem *=.*) with work_mem = $db_work_mem in /etc/postgresql/13/main/postgresql.conf
I, [2021-01-27T02:23:35.206223 #1]  INFO -- : Replacing (?-mix:#?default_text_search_config *=.*) with default_text_search_config = '$db_default_text_search_config' in /etc/postgresql/13/main/postgresql.conf
I, [2021-01-27T02:23:35.207160 #1]  INFO -- : > install -d -m 0755 -o postgres -g postgres /shared/postgres_backup
I, [2021-01-27T02:23:35.209131 #1]  INFO -- :
I, [2021-01-27T02:23:35.209339 #1]  INFO -- : Replacing (?-mix:#?checkpoint_segments *=.*) with checkpoint_segments = $db_checkpoint_segments in /etc/postgresql/13/main/postgresql.conf
I, [2021-01-27T02:23:35.209556 #1]  INFO -- : Replacing (?-mix:#?logging_collector *=.*) with logging_collector = $db_logging_collector in /etc/postgresql/13/main/postgresql.conf
I, [2021-01-27T02:23:35.210628 #1]  INFO -- : Replacing (?-mix:#?log_min_duration_statement *=.*) with log_min_duration_statement = $db_log_min_duration_statement in /etc/postgresql/13/main/postgresql.conf
I, [2021-01-27T02:23:35.211627 #1]  INFO -- : Replacing (?-mix:^#local +replication +postgres +peer$) with local replication postgres  peer in /etc/postgresql/13/main/pg_hba.conf
I, [2021-01-27T02:23:35.211812 #1]  INFO -- : Replacing (?-mix:^host.*all.*all.*127.*$) with host all all 0.0.0.0/0 md5 in /etc/postgresql/13/main/pg_hba.conf
I, [2021-01-27T02:23:35.212556 #1]  INFO -- : > HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main
I, [2021-01-27T02:23:35.213655 #1]  INFO -- : > sleep 5
2021-01-27 02:23:35.274 UTC [51] LOG:  starting PostgreSQL 13.1 (Debian 13.1-1.pgdg100+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit
2021-01-27 02:23:35.274 UTC [51] LOG:  listening on IPv4 address "0.0.0.0", port 5432
2021-01-27 02:23:35.274 UTC [51] LOG:  listening on IPv6 address "::", port 5432
2021-01-27 02:23:35.278 UTC [51] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2021-01-27 02:23:35.285 UTC [54] LOG:  database system was shut down at 2021-01-22 18:45:58 UTC
2021-01-27 02:23:35.293 UTC [51] LOG:  database system is ready to accept connections
I, [2021-01-27T02:23:40.215863 #1]  INFO -- :
I, [2021-01-27T02:23:40.216095 #1]  INFO -- : > su postgres -c 'createdb discourse' || true
2021-01-27 02:23:40.254 UTC [64] postgres@postgres ERROR:  database "discourse" already exists
2021-01-27 02:23:40.254 UTC [64] postgres@postgres STATEMENT:  CREATE DATABASE discourse;
createdb: error: database creation failed: ERROR:  database "discourse" already exists
I, [2021-01-27T02:23:40.255326 #1]  INFO -- :
I, [2021-01-27T02:23:40.255544 #1]  INFO -- : > su postgres -c 'psql discourse -c "create user discourse;"' || true
2021-01-27 02:23:40.297 UTC [75] postgres@discourse ERROR:  role "discourse" already exists
2021-01-27 02:23:40.297 UTC [75] postgres@discourse STATEMENT:  create user discourse;
ERROR:  role "discourse" already exists
I, [2021-01-27T02:23:40.298381 #1]  INFO -- :
I, [2021-01-27T02:23:40.298564 #1]  INFO -- : > su postgres -c 'psql discourse -c "grant all privileges on database discourse to discourse;"' || true
I, [2021-01-27T02:23:40.339257 #1]  INFO -- : GRANT

I, [2021-01-27T02:23:40.339469 #1]  INFO -- : > su postgres -c 'psql discourse -c "alter schema public owner to discourse;"'
I, [2021-01-27T02:23:40.381081 #1]  INFO -- : ALTER SCHEMA

I, [2021-01-27T02:23:40.381291 #1]  INFO -- : > su postgres -c 'psql template1 -c "create extension if not exists hstore;"'
NOTICE:  extension "hstore" already exists, skipping
I, [2021-01-27T02:23:40.424028 #1]  INFO -- : CREATE EXTENSION

I, [2021-01-27T02:23:40.424230 #1]  INFO -- : > su postgres -c 'psql template1 -c "create extension if not exists pg_trgm;"'
NOTICE:  extension "pg_trgm" already exists, skipping
I, [2021-01-27T02:23:40.465201 #1]  INFO -- : CREATE EXTENSION

I, [2021-01-27T02:23:40.465402 #1]  INFO -- : > su postgres -c 'psql discourse -c "create extension if not exists hstore;"'
NOTICE:  extension "hstore" already exists, skipping
I, [2021-01-27T02:23:40.505848 #1]  INFO -- : CREATE EXTENSION

I, [2021-01-27T02:23:40.506132 #1]  INFO -- : > su postgres -c 'psql discourse -c "create extension if not exists pg_trgm;"'
NOTICE:  extension "pg_trgm" already exists, skipping
I, [2021-01-27T02:23:40.546197 #1]  INFO -- : CREATE EXTENSION

I, [2021-01-27T02:23:40.546483 #1]  INFO -- : > sudo -u postgres psql discourse
I, [2021-01-27T02:23:40.547907 #1]  INFO -- : update pg_database set encoding = pg_char_to_encoding('UTF8') where datname = 'discourse' AND encoding = pg_char_to_encoding('SQL_ASCII');

I, [2021-01-27T02:23:40.593818 #1]  INFO -- : File > /var/lib/postgresql/take-database-backup  chmod: +x  chown: postgres:postgres
I, [2021-01-27T02:23:40.595848 #1]  INFO -- : File > /var/spool/cron/crontabs/postgres  chmod:   chown:
I, [2021-01-27T02:23:40.595932 #1]  INFO -- : > echo postgres installed!
I, [2021-01-27T02:23:40.597420 #1]  INFO -- : postgres installed!

I, [2021-01-27T02:23:40.600831 #1]  INFO -- : File > /etc/service/redis/run  chmod: +x  chown:
I, [2021-01-27T02:23:40.604240 #1]  INFO -- : File > /etc/service/redis/log/run  chmod: +x  chown:
I, [2021-01-27T02:23:40.607627 #1]  INFO -- : File > /etc/runit/3.d/10-redis  chmod: +x  chown:
I, [2021-01-27T02:23:40.607771 #1]  INFO -- : Replacing daemonize yes with  in /etc/redis/redis.conf
I, [2021-01-27T02:23:40.608189 #1]  INFO -- : Replacing (?-mix:^pidfile.*$) with  in /etc/redis/redis.conf
I, [2021-01-27T02:23:40.609758 #1]  INFO -- : > install -d -m 0755 -o redis -g redis /shared/redis_data
I, [2021-01-27T02:23:40.611653 #1]  INFO -- :
I, [2021-01-27T02:23:40.611895 #1]  INFO -- : Replacing (?-mix:^logfile.*$) with logfile "" in /etc/redis/redis.conf
I, [2021-01-27T02:23:40.612224 #1]  INFO -- : Replacing (?-mix:^bind .*$) with  in /etc/redis/redis.conf
I, [2021-01-27T02:23:40.613276 #1]  INFO -- : Replacing (?-mix:^dir .*$) with dir /shared/redis_data in /etc/redis/redis.conf
I, [2021-01-27T02:23:40.614500 #1]  INFO -- : Replacing (?-mix:^protected-mode yes) with protected-mode no in /etc/redis/redis.conf
I, [2021-01-27T02:23:40.615551 #1]  INFO -- : Replacing # io-threads 4 with io-threads $redis_io_threads in /etc/redis/redis.conf
I, [2021-01-27T02:23:40.616681 #1]  INFO -- : > echo redis installed
I, [2021-01-27T02:23:40.618206 #1]  INFO -- : redis installed

I, [2021-01-27T02:23:40.618336 #1]  INFO -- : > cat /etc/redis/redis.conf | grep logfile
I, [2021-01-27T02:23:40.621038 #1]  INFO -- : logfile ""

I, [2021-01-27T02:23:40.621135 #1]  INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2021-01-27T02:23:40.622175 #1]  INFO -- : > sleep 10
168:C 27 Jan 2021 02:23:40.625 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
168:C 27 Jan 2021 02:23:40.625 # Redis version=6.0.9, bits=64, commit=00000000, modified=0, pid=168, just started
168:C 27 Jan 2021 02:23:40.625 # Configuration loaded
                _._
           _.-``__ ''-._
      _.-``    `.  `_.  ''-._           Redis 6.0.9 (00000000/0) 64 bit
  .-`` .-```.  ```\/    _.,_ ''-._
 (    '      ,       .-`  | `,    )     Running in standalone mode
 |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379
 |    `-._   `._    /     _.-'    |     PID: 168
  `-._    `-._  `-./  _.-'    _.-'
 |`-._`-._    `-.__.-'    _.-'_.-'|
 |    `-._`-._        _.-'_.-'    |           http://redis.io
  `-._    `-._`-.__.-'_.-'    _.-'
 |`-._`-._    `-.__.-'    _.-'_.-'|
 |    `-._`-._        _.-'_.-'    |
  `-._    `-._`-.__.-'_.-'    _.-'
      `-._    `-.__.-'    _.-'
          `-._        _.-'
              `-.__.-'

168:M 27 Jan 2021 02:23:40.626 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
168:M 27 Jan 2021 02:23:40.626 # Server initialized
168:M 27 Jan 2021 02:23:40.626 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
168:M 27 Jan 2021 02:23:40.626 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo madvise > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled (set to 'madvise' or 'never').
168:M 27 Jan 2021 02:23:40.627 * Loading RDB produced by version 6.0.9
168:M 27 Jan 2021 02:23:40.627 * RDB age 373062 seconds
168:M 27 Jan 2021 02:23:40.627 * RDB memory usage when created 0.77 Mb
168:M 27 Jan 2021 02:23:40.627 * DB loaded from disk: 0.001 seconds
168:M 27 Jan 2021 02:23:40.627 * Ready to accept connections
I, [2021-01-27T02:23:50.624174 #1]  INFO -- :
I, [2021-01-27T02:23:50.624368 #1]  INFO -- : > thpoff echo "thpoff is installed!"
I, [2021-01-27T02:23:50.628194 #1]  INFO -- : thpoff is installed!

I, [2021-01-27T02:23:50.628403 #1]  INFO -- : > /usr/local/bin/ruby -e 'if ENV["DISCOURSE_SMTP_ADDRESS"] == "smtp.example.com"; puts "Aborting! Mail is not configured!"; exit 1; end'
I, [2021-01-27T02:23:50.684626 #1]  INFO -- :
I, [2021-01-27T02:23:50.684797 #1]  INFO -- : > /usr/local/bin/ruby -e 'if ENV["DISCOURSE_HOSTNAME"] == "discourse.example.com"; puts "Aborting! Domain is not configured!"; exit 1; end'
I, [2021-01-27T02:23:50.740355 #1]  INFO -- :
I, [2021-01-27T02:23:50.740509 #1]  INFO -- : > /usr/local/bin/ruby -e 'if (ENV["DISCOURSE_CDN_URL"] || "")[0..1] == "//"; puts "Aborting! CDN must have a protocol specified. Once fixed you should rebake your posts now to correct all posts."; exit 1; end'
I, [2021-01-27T02:23:50.795416 #1]  INFO -- :
I, [2021-01-27T02:23:50.795561 #1]  INFO -- : > chown -R discourse /home/discourse
I, [2021-01-27T02:23:51.993394 #1]  INFO -- :
I, [2021-01-27T02:23:51.993649 #1]  INFO -- : > rm -f /etc/cron.d/anacron
I, [2021-01-27T02:23:51.996154 #1]  INFO -- :
I, [2021-01-27T02:23:51.998656 #1]  INFO -- : File > /etc/cron.d/anacron  chmod:   chown:
I, [2021-01-27T02:23:52.002447 #1]  INFO -- : File > /etc/runit/1.d/copy-env  chmod: +x  chown:
I, [2021-01-27T02:23:52.005954 #1]  INFO -- : File > /etc/service/unicorn/run  chmod: +x  chown:
I, [2021-01-27T02:23:52.009632 #1]  INFO -- : File > /etc/service/nginx/run  chmod: +x  chown:
I, [2021-01-27T02:23:52.012917 #1]  INFO -- : File > /etc/runit/3.d/01-nginx  chmod: +x  chown:
I, [2021-01-27T02:23:52.016214 #1]  INFO -- : File > /etc/runit/3.d/02-unicorn  chmod: +x  chown:
I, [2021-01-27T02:23:52.016297 #1]  INFO -- : Replacing # postgres with sv start postgres || exit 1 in /etc/service/unicorn/run
I, [2021-01-27T02:23:52.016484 #1]  INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2021-01-27T02:23:52.018137 #1]  INFO -- : > cd /var/www/discourse && git reset --hard
196:C 27 Jan 2021 02:23:52.022 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
196:C 27 Jan 2021 02:23:52.022 # Redis version=6.0.9, bits=64, commit=00000000, modified=0, pid=196, just started
196:C 27 Jan 2021 02:23:52.022 # Configuration loaded
196:M 27 Jan 2021 02:23:52.022 # Could not create server TCP listening socket *:6379: bind: Address already in use
Checking out files: 100% (28296/28296), done.
I, [2021-01-27T02:23:53.939497 #1]  INFO -- : HEAD is now at c4552e9c FIX: Autoplay videos must always be muted (#11533)

I, [2021-01-27T02:23:53.939601 #1]  INFO -- : > cd /var/www/discourse && git clean -f
I, [2021-01-27T02:23:54.022025 #1]  INFO -- :
I, [2021-01-27T02:23:54.022124 #1]  INFO -- : > cd /var/www/discourse && git remote set-branches --add origin master
I, [2021-01-27T02:23:54.025577 #1]  INFO -- :
I, [2021-01-27T02:23:54.025664 #1]  INFO -- : > cd /var/www/discourse && git remote set-branches origin tests-passed
I, [2021-01-27T02:23:54.028750 #1]  INFO -- :
I, [2021-01-27T02:23:54.028832 #1]  INFO -- : > cd /var/www/discourse && git fetch --depth 1 origin tests-passed
From https://github.com/discourse/discourse
 * branch              tests-passed -> FETCH_HEAD
 * [new branch]        tests-passed -> origin/tests-passed
I, [2021-01-27T02:23:57.285604 #1]  INFO -- :
I, [2021-01-27T02:23:57.285712 #1]  INFO -- : > cd /var/www/discourse && git checkout tests-passed
Switched to a new branch 'tests-passed'
I, [2021-01-27T02:23:57.857114 #1]  INFO -- : Branch 'tests-passed' set up to track remote branch 'tests-passed' from 'origin'.

I, [2021-01-27T02:23:57.857221 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp
I, [2021-01-27T02:23:57.860401 #1]  INFO -- :
I, [2021-01-27T02:23:57.860491 #1]  INFO -- : > cd /var/www/discourse && chown discourse:www-data tmp
I, [2021-01-27T02:23:57.862857 #1]  INFO -- :
I, [2021-01-27T02:23:57.862925 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp/pids
I, [2021-01-27T02:23:57.865399 #1]  INFO -- :
I, [2021-01-27T02:23:57.865471 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp/sockets
I, [2021-01-27T02:23:57.867854 #1]  INFO -- :
I, [2021-01-27T02:23:57.867922 #1]  INFO -- : > cd /var/www/discourse && touch tmp/.gitkeep
I, [2021-01-27T02:23:57.870065 #1]  INFO -- :
I, [2021-01-27T02:23:57.870133 #1]  INFO -- : > cd /var/www/discourse && mkdir -p                    /shared/log/rails
I, [2021-01-27T02:23:57.872299 #1]  INFO -- :
I, [2021-01-27T02:23:57.872361 #1]  INFO -- : > cd /var/www/discourse && bash -c "touch -a           /shared/log/rails/{production,production_errors,unicorn.stdout,unicorn.stderr,sidekiq}.log"
I, [2021-01-27T02:23:57.875562 #1]  INFO -- :
I, [2021-01-27T02:23:57.875646 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/log/rails/{production,production_errors,unicorn.stdout,unicorn.stderr,sidekiq}.log /var/www/discourse/log"
I, [2021-01-27T02:23:57.879076 #1]  INFO -- :
I, [2021-01-27T02:23:57.879144 #1]  INFO -- : > cd /var/www/discourse && bash -c "mkdir -p           /shared/{uploads,backups}"
I, [2021-01-27T02:23:57.882376 #1]  INFO -- :
I, [2021-01-27T02:23:57.882446 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/{uploads,backups} /var/www/discourse/public"
I, [2021-01-27T02:23:57.885522 #1]  INFO -- :
I, [2021-01-27T02:23:57.885613 #1]  INFO -- : > cd /var/www/discourse && bash -c "mkdir -p           /shared/tmp/{backups,restores}"
I, [2021-01-27T02:23:57.888826 #1]  INFO -- :
I, [2021-01-27T02:23:57.888895 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/tmp/{backups,restores} /var/www/discourse/tmp"
I, [2021-01-27T02:23:57.891921 #1]  INFO -- :
I, [2021-01-27T02:23:57.891999 #1]  INFO -- : > cd /var/www/discourse && chown -R discourse:www-data /shared/log/rails /shared/uploads /shared/backups /shared/tmp
I, [2021-01-27T02:23:57.894182 #1]  INFO -- :
I, [2021-01-27T02:23:57.894258 #1]  INFO -- : > cd /var/www/discourse && find public/plugins/ -maxdepth 1 -xtype l -delete
I, [2021-01-27T02:23:57.896716 #1]  INFO -- :
I, [2021-01-27T02:23:57.896844 #1]  INFO -- : Replacing # redis with sv start redis || exit 1 in /etc/service/unicorn/run
I, [2021-01-27T02:23:57.897125 #1]  INFO -- : > cd /var/www/discourse/plugins && mkdir -p plugins
I, [2021-01-27T02:23:57.899325 #1]  INFO -- :
I, [2021-01-27T02:23:57.899394 #1]  INFO -- : > cd /var/www/discourse/plugins && git clone https://github.com/discourse/docker_manager.git
Cloning into 'docker_manager'...
I, [2021-01-27T02:23:59.343670 #1]  INFO -- :
I, [2021-01-27T02:23:59.343784 #1]  INFO -- : > cd /var/www/discourse/plugins && git clone https://github.com/discourse/discourse-solved.git
Cloning into 'discourse-solved'...
I, [2021-01-27T02:24:00.242855 #1]  INFO -- :
I, [2021-01-27T02:24:00.242963 #1]  INFO -- : > cd /var/www/discourse/plugins && git clone https://github.com/discourse/discourse-feature-voting.git
Cloning into 'discourse-feature-voting'...
I, [2021-01-27T02:24:01.142839 #1]  INFO -- :
I, [2021-01-27T02:24:01.143097 #1]  INFO -- : > cp /var/www/discourse/config/nginx.sample.conf /etc/nginx/conf.d/discourse.conf
I, [2021-01-27T02:24:01.145932 #1]  INFO -- :
I, [2021-01-27T02:24:01.146056 #1]  INFO -- : > rm /etc/nginx/sites-enabled/default
I, [2021-01-27T02:24:01.147930 #1]  INFO -- :
I, [2021-01-27T02:24:01.148013 #1]  INFO -- : > mkdir -p /var/nginx/cache
I, [2021-01-27T02:24:01.149838 #1]  INFO -- :
I, [2021-01-27T02:24:01.150069 #1]  INFO -- : Replacing pid /run/nginx.pid; with daemon off; in /etc/nginx/nginx.conf
I, [2021-01-27T02:24:01.150307 #1]  INFO -- : Replacing (?m-ix:upstream[^\}]+\}) with upstream discourse { server 127.0.0.1:3000; } in /etc/nginx/conf.d/discourse.conf
I, [2021-01-27T02:24:01.150480 #1]  INFO -- : Replacing (?-mix:server_name.+$) with server_name _ ; in /etc/nginx/conf.d/discourse.conf
I, [2021-01-27T02:24:01.151135 #1]  INFO -- : Replacing (?-mix:client_max_body_size.+$) with client_max_body_size $upload_size ; in /etc/nginx/conf.d/discourse.conf
I, [2021-01-27T02:24:01.151717 #1]  INFO -- : > echo "done configuring web"
I, [2021-01-27T02:24:01.153224 #1]  INFO -- : done configuring web

I, [2021-01-27T02:24:01.153440 #1]  INFO -- : > cd /var/www/discourse && gem update bundler
I, [2021-01-27T02:24:05.839906 #1]  INFO -- : Updating installed gems
Updating bundler
Successfully installed bundler-2.2.7
Gems updated: bundler

الجزء الثاني

[2021-01-27T02:24:05.840013 #1]  INFO -- : > cd /var/www/discourse && find /var/www/discourse ! -user discourse -exec chown discourse {} \+
    I, [2021-01-27T02:24:12.608457 #1]  INFO -- :
    I, [2021-01-27T02:24:12.608656 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle install --deployment --retry 3 --jobs 4 --verbose --without test development'
    [DEPRECATED] تم إهمال العلم `--deployment` لأنه يعتمد على تذكره عبر استدعاءات bundler، وهو ما لن يفعله bundler في الإصدارات المستقبلية. بدلاً من ذلك، يرجى استخدام `bundle config set --local deployment 'true'`، والتوقف عن استخدام هذا العلم
    [DEPRECATED] تم إهمال العلم `--without` لأنه يعتمد على تذكره عبر استدعاءات bundler، وهو ما لن يفعله bundler في الإصدارات المستقبلية. بدلاً من ذلك، يرجى استخدام `bundle config set --local without 'test development'`، والتوقف عن استخدام هذا العلم
    I, [2021-01-27T02:24:39.339048 #1]  INFO -- : تشغيل `bundle install --deployment --jobs 4 --retry 3 --verbose --without "test" "development"` باستخدام bundler 2.2.7
    مجمد، استخدام الحل من ملف القفل (lockfile)
    التعريف يفتقر إلى ["rake-13.0.3", "concurrent-ruby-1.1.8", "i18n-1.8.7", "minitest-5.14.3", "racc-1.5.2", "nokogiri-1.11.1-x86_64-linux", "loofah-2.9.0", "chunky_png-1.4.0", "css_parser-1.8.0", "thor-1.1.0", "faraday-net_http-1.0.1", "ruby2_keywords-0.0.4", "faraday-1.3.0", "fastimage-2.2.1", "ffi-1.14.2", "json-2.5.1", "logster-2.9.5", "sidekiq-6.1.3", "mini_sql-1.0.1", "mini_suffix-0.3.2", "oauth-0.5.5", "oj-3.11.1", "omniauth-oauth2-1.7.1", "sanitize-5.2.3", "onebox-2.2.2", "rack-mini-profiler-2.3.0", "rqrcode_core-0.2.0", "rqrcode-1.2.0", "unicorn-5.8.0"]
    HTTP GET https://index.rubygems.org/versions
    HTTP 206 Partial Content https://index.rubygems.org/versions
    HTTP GET https://index.rubygems.org/versions
    HTTP 200 OK https://index.rubygems.org/versions
    جلب بيانات الجيم من https://rubygems.org/
    البحث عن الجيمات ["rake", "concurrent-ruby", "i18n", "minitest", "thread_safe", "tzinfo", "zeitwerk", "activesupport", "builder", "erubi", "racc", "nokogiri", "rails-dom-testing", "crass", "loofah", "rails-html-sanitizer", "actionview", "rack", "rack-test", "actionpack", "globalid", "activejob", "mini_mime", "mail", "actionmailer", "actionview_precompiler", "activemodel", "active_model_serializers", "activerecord", "public_suffix", "addressable", "aws-eventstream", "aws-partitions", "aws-sigv4", "jmespath", "aws-sdk-core", "aws-sdk-kms", "aws-sdk-s3", "aws-sdk-sns", "ember-source", "execjs", "barber", "msgpack", "bootsnap", "byebug", "cbor", "chunky_png", "coderay", "colored2", "connection_pool", "openssl-signature_algorithm", "cose", "cppjieba_rb", "css_parser", "diffy", "ember-data-source", "sprockets", "ember-handlebars-template", "method_source", "thor", "railties", "jquery-rails", "discourse-ember-rails", "discourse-ember-source", "discourse-fonts", "exifr", "fspath", "image_size", "in_threads", "progress", "discourse_image_optim", "email_reply_trimmer", "excon", "faraday-net_http", "multipart-post", "ruby2_keywords", "faraday", "fast_blank", "fast_xs", "fastimage", "ffi", "gc_tracer", "guess_html_encoding", "hashie", "highline", "hkdf", "htmlentities", "http_accept_language", "json", "jwt", "kgio", "libv8", "request_store", "lograge", "logstash-event", "logstash-logger", "logster", "lru_redux", "lz4-ruby", "maxminddb", "memory_profiler", "message_bus", "mini_racer", "redis", "sidekiq", "mini_scheduler", "mini_sql", "mini_suffix", "multi_json", "multi_xml", "mustache", "nio4r", "nokogumbo", "oauth", "oauth2", "oj", "omniauth", "omniauth-oauth2", "omniauth-facebook", "omniauth-github", "omniauth-google-oauth2", "omniauth-oauth", "omniauth-twitter", "sanitize", "onebox", "optimist", "pg", "pry", "pry-byebug", "pry-rails", "puma", "r2", "rack-mini-profiler", "rack-protection", "rails_failover", "rails_multisite", "raindrops", "rbtrace", "rchardet", "redis-namespace", "rinku", "rotp", "rqrcode_core", "rqrcode", "rtlit", "ruby-readability", "rubyzip", "sassc", "sprockets-rails", "tilt", "sassc-rails", "seed-fu", "sshkey", "stackprof", "uglifier", "unf_ext", "unf", "unicorn", "webpush", "xorcist"]
    HTTP GET https://index.rubygems.org/info/racc
    HTTP GET https://index.rubygems.org/info/nokogiri
    HTTP GET https://index.rubygems.org/info/tzinfo
    HTTP GET https://index.rubygems.org/info/loofah
    HTTP GET https://index.rubygems.org/info/activemodel
    HTTP GET https://index.rubygems.org/info/activejob
    HTTP GET https://index.rubygems.org/info/concurrent-ruby
    HTTP GET https://index.rubygems.org/info/actionview
    HTTP GET https://index.rubygems.org/info/actionpack
    HTTP GET https://index.rubygems.org/info/i18n
    HTTP 200 OK https://index.rubygems.org/info/racc
    HTTP GET https://index.rubygems.org/info/activesupport
    HTTP GET https://index.rubygems.org/info/css_parser
    HTTP GET https://index.rubygems.org/info/actionmailer
    HTTP GET https://index.rubygems.org/info/minitest
    HTTP GET https://index.rubygems.org/info/aws-sdk-s3
    HTTP 206 Partial Content https://index.rubygems.org/info/actionview
    HTTP GET https://index.rubygems.org/info/aws-sdk-kms
    HTTP GET https://index.rubygems.org/info/activerecord
    HTTP GET https://index.rubygems.org/info/aws-partitions
    HTTP GET https://index.rubygems.org/info/aws-sdk-sns
    HTTP GET https://index.rubygems.org/info/aws-sdk-core
    HTTP GET https://index.rubygems.org/info/chunky_png
    HTTP GET https://index.rubygems.org/info/msgpack
    HTTP 206 Partial Content https://index.rubygems.org/info/i18n
    HTTP 206 Partial Content https://index.rubygems.org/info/nokogiri
    HTTP 206 Partial Content https://index.rubygems.org/info/activemodel
    HTTP 206 Partial Content https://index.rubygems.org/info/activejob
    HTTP 206 Partial Content https://index.rubygems.org/info/tzinfo
    HTTP 206 Partial Content https://index.rubygems.org/info/loofah
    HTTP 206 Partial Content https://index.rubygems.org/info/css_parser
    HTTP 206 Partial Content https://index.rubygems.org/info/aws-sdk-kms
    HTTP 206 Partial Content https://index.rubygems.org/info/activesupport
    HTTP GET https://index.rubygems.org/info/thor
    HTTP GET https://index.rubygems.org/info/railties
    HTTP 206 Partial Content https://index.rubygems.org/info/actionmailer
    HTTP 206 Partial Content https://index.rubygems.org/info/aws-partitions
    HTTP 206 Partial Content https://index.rubygems.org/info/chunky_png
    HTTP 206 Partial Content https://index.rubygems.org/info/aws-sdk-sns
    HTTP 206 Partial Content https://index.rubygems.org/info/actionpack
    HTTP 206 Partial Content https://index.rubygems.org/info/concurrent-ruby
    HTTP GET https://index.rubygems.org/info/faraday-net_http
    HTTP 206 Partial Content https://index.rubygems.org/info/railties
    HTTP 206 Partial Content https://index.rubygems.org/info/aws-sdk-s3
    HTTP 206 Partial Content https://index.rubygems.org/info/aws-sdk-core
    HTTP 206 Partial Content https://index.rubygems.org/info/activerecord
    HTTP 206 Partial Content https://index.rubygems.org/info/minitest
    HTTP 206 Partial Content https://index.rubygems.org/info/thor
    HTTP GET https://index.rubygems.org/info/ruby2_keywords
    HTTP GET https://index.rubygems.org/info/faraday
    HTTP 206 Partial Content https://index.rubygems.org/info/ruby2_keywords
    HTTP 206 Partial Content https://index.rubygems.org/info/msgpack
    HTTP GET https://index.rubygems.org/info/fastimage
    HTTP 200 OK https://index.rubygems.org/info/faraday-net_http
    HTTP 206 Partial Content https://index.rubygems.org/info/faraday
    HTTP GET https://index.rubygems.org/info/json
    HTTP 206 Partial Content https://index.rubygems.org/info/json
    HTTP GET https://index.rubygems.org/info/logster
    HTTP GET https://index.rubygems.org/info/mini_suffix
    HTTP GET https://index.rubygems.org/info/rack-mini-profiler
    HTTP 206 Partial Content https://index.rubygems.org/info/fastimage
    HTTP GET https://index.rubygems.org/info/mini_sql
    HTTP GET https://index.rubygems.org/info/oauth
    HTTP GET https://index.rubygems.org/info/sidekiq
    HTTP GET https://index.rubygems.org/info/omniauth-oauth2
    HTTP 206 Partial Content https://index.rubygems.org/info/rack-mini-profiler
    HTTP GET https://index.rubygems.org/info/omniauth-github
    HTTP GET https://index.rubygems.org/info/omniauth
    HTTP GET https://index.rubygems.org/info/onebox
    HTTP GET https://index.rubygems.org/info/oj
    HTTP GET https://index.rubygems.org/info/sanitize
    HTTP 206 Partial Content https://index.rubygems.org/info/logster
    HTTP 206 Partial Content https://index.rubygems.org/info/oj
    HTTP 206 Partial Content https://index.rubygems.org/info/omniauth
    HTTP 206 Partial Content https://index.rubygems.org/info/mini_suffix
    HTTP 206 Partial Content https://index.rubygems.org/info/omniauth-github
    HTTP GET https://index.rubygems.org/info/rqrcode
    HTTP GET https://index.rubygems.org/info/rqrcode_core
    HTTP 206 Partial Content https://index.rubygems.org/info/mini_sql
    HTTP GET https://index.rubygems.org/info/unicorn
    HTTP 206 Partial Content https://index.rubygems.org/info/sanitize
    HTTP 206 Partial Content https://index.rubygems.org/info/omniauth-oauth2
    HTTP 206 Partial Content https://index.rubygems.org/info/oauth
    HTTP 206 Partial Content https://index.rubygems.org/info/rqrcode_core
    HTTP 206 Partial Content https://index.rubygems.org/info/rqrcode
    HTTP 206 Partial Content https://index.rubygems.org/info/sidekiq
    HTTP 206 Partial Content https://index.rubygems.org/info/unicorn
    HTTP 206 Partial Content https://index.rubygems.org/info/onebox
    البحث عن الجيمات ["rails-deprecated_sanitizer", "atomic", "mime-types", "treetop", "tlsmail", "rspec", "json_pure", "jsonapi", "case_transform", "jsonapi-renderer", "ember-template-compiler-source", "handlebars-source", "columnize", "debugger-linecache", "slop", "rb-readline", "snappy", "hike", "ruby_parser", "rails", "hoe", "weakling", "mini_portile", "mini_portile2", "pkg-config", "rb-appscript", "xattr", "ffi-xattr", "bcrypt-ruby", "erubis", "rake-compiler", "activemodel-globalid", "functional-ruby", "ref", "memcache-client", "termios", "text-format", "rdoc", "stud", "eventmachine", "thin", "faraday-middleware", "httpauth", "rack-mount", "rack-cache", "journey", "jamespath", "http-2", "win32console", "yard", "spoon", "arel", "activerecord-deprecated_finders", "pry-doc", "listen", "escape_utils", "trollop", "rack-ssl", "base32", "sass", "bundler", "therubyracer", "bigdecimal", "oa-core", "oa-oauth", "oa-openid", "oa-basic", "oa-enterprise", "oa-more", "hpricot", "ruby-hmac", "celluloid", "compass", "sprockets-sass", "sinatra", "slim", "moneta", "opengraph_parser", "verbal_expressions", "hexpress", "pdf-reader"]
    HTTP GET https://index.rubygems.org/info/hoe
    HTTP GET https://index.rubygems.org/info/json_pure
    HTTP 206 Partial Content https://index.rubygems.org/info/hoe
    HTTP 206 Partial Content https://index.rubygems.org/info/json_pure
    HTTP GET https://index.rubygems.org/info/snappy
    HTTP GET https://index.rubygems.org/info/rails
    HTTP GET https://index.rubygems.org/info/ruby_parser
    HTTP GET https://index.rubygems.org/info/http-2
    HTTP GET https://index.rubygems.org/info/yard
    HTTP GET https://index.rubygems.org/info/bundler
    HTTP GET https://index.rubygems.org/info/listen
    HTTP 206 Partial Content https://index.rubygems.org/info/snappy
    HTTP 206 Partial Content https://index.rubygems.org/info/rails
    HTTP 206 Partial Content https://index.rubygems.org/info/ruby_parser
    HTTP 206 Partial Content https://index.rubygems.org/info/yard
    HTTP 206 Partial Content https://index.rubygems.org/info/http-2
    HTTP 206 Partial Content https://index.rubygems.org/info/bundler
    HTTP 206 Partial Content https://index.rubygems.org/info/listen
    البحث عن الجيمات ["mime-types-data", "ruby_core_source", "debugger-ruby_core_source", "facets", "polyglot", "jsonapi-parser", "rspec-core", "rspec-expectations", "rspec-mocks", "bcrypt", "abstract", "text-hyphen", "multimap", "ZenTest", "RubyInline", "daemons", "metriks", "rack-openid", "ruby-openid-apps-discovery", "restclient", "rest-client", "curses", "sass-listen", "net-ldap", "rubyntlm", "pyu-ruby-sasl", "uuid", "XMLCanonicalizer", "timers", "facter", "celluloid-essentials", "celluloid-extras", "celluloid-fsm", "celluloid-pool", "celluloid-supervision", "dotenv", "nenv", "rspec-logsplit", "Ascii85", "ruby-rc4", "hashery", "afm", "ttfunk", "haml", "fssm", "compass-core", "compass-import-once", "rb-fsevent", "rb-inotify", "sprockets-helpers", "mongrel", "backports", "mustermann", "temple", "rubyforge", "gemcutter", "spruz", "snappy-jars", "activeresource", "actionwebservice", "actioncable", "activestorage", "actionmailbox", "actiontext", "ParseTree", "sexp_processor", "rb-fchange", "rb-kqueue", "celluloid-io", "ruby_dep"]
    HTTP GET https://index.rubygems.org/info/rspec-core
    HTTP GET https://index.rubygems.org/info/rspec-mocks
    HTTP GET https://index.rubygems.org/info/rspec-expectations
    HTTP 206 Partial Content https://index.rubygems.org/info/rspec-core
    HTTP GET https://index.rubygems.org/info/ttfunk
    HTTP GET https://index.rubygems.org/info/facter
    HTTP GET https://index.rubygems.org/info/activestorage
    HTTP GET https://index.rubygems.org/info/actionmailbox
    HTTP GET https://index.rubygems.org/info/actiontext
    HTTP 206 Partial Content https://index.rubygems.org/info/rspec-mocks
    HTTP GET https://index.rubygems.org/info/backports
    HTTP GET https://index.rubygems.org/info/actioncable
    HTTP GET https://index.rubygems.org/info/sexp_processor
    HTTP 206 Partial Content https://index.rubygems.org/info/ttfunk
    HTTP 206 Partial Content https://index.rubygems.org/info/rspec-expectations
    HTTP 206 Partial Content https://index.rubygems.org/info/facter
    HTTP 206 Partial Content https://index.rubygems.org/info/activestorage
    HTTP 206 Partial Content https://index.rubygems.org/info/actionmailbox
    HTTP 206 Partial Content https://index.rubygems.org/info/actiontext
    HTTP 206 Partial Content https://index.rubygems.org/info/actioncable
    HTTP 206 Partial Content https://index.rubygems.org/info/sexp_processor
    HTTP 206 Partial Content https://index.rubygems.org/info/backports
    البحث عن الجيمات ["ruby-openid", "archive-tar-minitar", "hitimes", "rbtree", "faraday_middleware", "yajl-ruby", "avl_tree", "netrc", "http-cookie", "http-accept", "log4r", "macaddr", "coveralls", "rubocop", "celluloid-gems", "dotenv-deployment", "blankslate", "cgi_multipart_eof_fix", "fastthread", "gem_plugin", "tool", "net-scp", "rails-observers", "activemodel-serializers-xml", "SexpProcessor", "win32-api", "rspec-support", "diff-lcs", "CFPropertyList", "sys-admin", "win32-dir", "windows-api", "windows-pr", "win32-security", "hocon", "marcel", "mimemagic", "coffee-rails", "em-hiredis", "faye-websocket", "websocket-driver"]
    HTTP GET https://index.rubygems.org/info/rbtree
    HTTP GET https://index.rubygems.org/info/rubocop
    HTTP GET https://index.rubygems.org/info/rspec-support
    HTTP GET https://index.rubygems.org/info/sys-admin
    HTTP 206 Partial Content https://index.rubygems.org/info/rubocop
    HTTP 206 Partial Content https://index.rubygems.org/info/sys-admin
    HTTP 206 Partial Content https://index.rubygems.org/info/rbtree
    HTTP 206 Partial Content https://index.rubygems.org/info/rspec-support
    البحث عن الجيمات ["ruby-yadis", "configuration", "mkrf", "roauth", "domain_name", "sqlite3", "test-unit", "minitar", "minitar-cli", "systemu", "net-ssh", "colorize", "simplecov", "term-ansicolor", "tins", "coffee-script", "ffi-win32-extensions", "libxml-ruby", "hiredis", "websocket-extensions", "rainbow", "parser", "powerpack", "ruby-progressbar", "astrolabe", "unicode-display_width", "parallel", "jaro_winkler", "psych", "rexml", "rubocop-ast", "regexp_parser"]
    HTTP GET https://index.rubygems.org/info/simplecov
    HTTP GET https://index.rubygems.org/info/parser
    HTTP GET https://index.rubygems.org/info/unicode-display_width
    HTTP GET https://index.rubygems.org/info/ruby-progressbar
    HTTP GET https://index.rubygems.org/info/tins
    HTTP GET https://index.rubygems.org/info/test-unit
    HTTP GET https://index.rubygems.org/info/psych
    HTTP GET https://index.rubygems.org/info/rubocop-ast
    HTTP GET https://index.rubygems.org/info/regexp_parser
    HTTP 206 Partial Content https://index.rubygems.org/info/simplecov
    HTTP 206 Partial Content https://index.rubygems.org/info/rubocop-ast
    HTTP 206 Partial Content https://index.rubygems.org/info/unicode-display_width
    HTTP 206 Partial Content https://index.rubygems.org/info/ruby-progressbar
    HTTP 206 Partial Content https://index.rubygems.org/info/regexp_parser
    HTTP 206 Partial Content https://index.rubygems.org/info/parser
    HTTP 206 Partial Content https://index.rubygems.org/info/test-unit
    HTTP 206 Partial Content https://index.rubygems.org/info/tins
    HTTP 206 Partial Content https://index.rubygems.org/info/psych
    البحث عن الجيمات ["powerbar", "needle", "jruby-pageant", "bcrypt_pbkdf", "rbnacl", "rbnacl-libsodium", "coffee-script-source", "simplecov-html", "docile", "lockfile", "simplecov_json_formatter", "strscan", "ast", "jar-dependencies", "power_assert", "sync"]
    HTTP GET https://index.rubygems.org/info/docile
    HTTP GET https://index.rubygems.org/info/bcrypt_pbkdf
    HTTP GET https://index.rubygems.org/info/ast
    HTTP GET https://index.rubygems.org/info/power_assert
    HTTP 206 Partial Content https://index.rubygems.org/info/docile
    HTTP 206 Partial Content https://index.rubygems.org/info/bcrypt_pbkdf
    HTTP 206 Partial Content https://index.rubygems.org/info/ast
    HTTP 206 Partial Content https://index.rubygems.org/info/power_assert
    البحث عن الجيمات ["ruby-maven", "ansi", "pattern-match"]
    البحث عن الجيمات ["maven-tools", "ruby-maven-libs"]
    البحث عن الجيمات ["virtus"]
    البحث عن الجيمات ["descendants_tracker", "axiom-types", "coercible", "equalizer"]
    البحث عن الجيمات ["adamantium", "ice_nine"]
    البحث عن الجيمات ["memoizable"]
    جلب rake 13.0.3
    تثبيت rake 13.0.3
    0:  rake (13.0.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/rake-13.0.3.gemspec
    استخدام thread_safe 0.3.6
    استخدام zeitwerk 2.4.2
    3:  thread_safe (0.3.6) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/thread_safe-0.3.6.gemspec
    جلب minitest 5.14.3
    استخدام builder 3.2.4
    0:  zeitwerk (2.4.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/zeitwerk-2.4.2.gemspec
    استخدام erubi 1.10.0
    جلب concurrent-ruby 1.1.8
    0:  erubi (1.10.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/erubi-1.10.0.gemspec
    3:  builder (3.2.4) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/builder-3.2.4.gemspec
    جلب racc 1.5.2
    استخدام crass 1.0.6
    0:  crass (1.0.6) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/crass-1.0.6.gemspec
    استخدام rack 2.2.3
    0:  rack (2.2.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/rack-2.2.3.gemspec
    استخدام mini_mime 1.0.2
    0:  mini_mime (1.0.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/mini_mime-1.0.2.gemspec
    استخدام public_suffix 4.0.6
    0:  public_suffix (4.0.6) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/public_suffix-4.0.6.gemspec
    استخدام aws-eventstream 1.1.0
    0:  aws-eventstream (1.1.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/aws-eventstream-1.1.0.gemspec
    استخدام aws-partitions 1.390.0
    0:  aws-partitions (1.390.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/aws-partitions-1.390.0.gemspec
    استخدام jmespath 1.4.0
    0:  jmespath (1.4.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/jmespath-1.4.0.gemspec
    استخدام ember-source 2.18.2
    0:  ember-source (2.18.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/ember-source-2.18.2.gemspec
    استخدام execjs 2.7.0
    0:  execjs (2.7.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/execjs-2.7.0.gemspec
    استخدام msgpack 1.3.3
    0:  msgpack (1.3.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/msgpack-1.3.3.gemspec
    استخدام bundler 2.2.7
    0:  bundler (2.2.7) من /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.2.7/lib/bundler/source
    استخدام byebug 11.1.3
    0:  byebug (11.1.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/byebug-11.1.3.gemspec
    استخدام cbor 0.5.9.6
    0:  cbor (0.5.9.6) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/cbor-0.5.9.6.gemspec
    جلب chunky_png 1.4.0
    تثبيت minitest 5.14.3
    تثبيت concurrent-ruby 1.1.8
    تثبيت racc 1.5.2 مع الامتدادات الأصلية
    تثبيت chunky_png 1.4.0
    2:  minitest (5.14.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/minitest-5.14.3.gemspec
    استخدام coderay 1.1.3
    2:  coderay (1.1.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/coderay-1.1.3.gemspec
    استخدام colored2 3.1.2
    2:  colored2 (3.1.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/colored2-3.1.2.gemspec
    استخدام connection_pool 2.2.3
    2:  connection_pool (2.2.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/connection_pool-2.2.3.gemspec
    استخدام openssl-signature_algorithm 1.0.0
    2:  openssl-signature_algorithm (1.0.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/openssl-signature_algorithm-1.0.0.gemspec
    استخدام cppjieba_rb 0.3.3
    2:  cppjieba_rb (0.3.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/cppjieba_rb-0.3.3.gemspec
    استخدام diffy 3.4.0
    2:  diffy (3.4.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/diffy-3.4.0.gemspec
    استخدام method_source 1.0.0
    2:  method_source (1.0.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/method_source-1.0.0.gemspec
    جلب thor 1.1.0
    تثبيت thor 1.1.0
    بناء الامتدادات الأصلية. قد يستغرق هذا بعض الوقت...
    1:  concurrent-ruby (1.1.8) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/concurrent-ruby-1.1.8.gemspec
    2:  thor (1.1.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/thor-1.1.0.gemspec
    استخدام discourse-ember-source 3.12.2.2
    1:  discourse-ember-source (3.12.2.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/discourse-ember-source-3.12.2.2.gemspec
    استخدام discourse-fonts 0.0.5
    استخدام exifr 1.3.9
    2:  exifr (1.3.9) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/exifr-1.3.9.gemspec
    استخدام fspath 3.1.2
    2:  fspath (3.1.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/fspath-3.1.2.gemspec
    استخدام image_size 1.5.0
    2:  image_size (1.5.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/image_size-1.5.0.gemspec
    استخدام in_threads 1.5.4
    2:  in_threads (1.5.4) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/in_threads-1.5.4.gemspec
    استخدام progress 3.5.2
    2:  progress (3.5.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/progress-3.5.2.gemspec
    استخدام email_reply_trimmer 0.1.13
    2:  email_reply_trimmer (0.1.13) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/email_reply_trimmer-0.1.13.gemspec
    استخدام excon 0.78.1
    2:  excon (0.78.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/excon-0.78.1.gemspec
    1:  discourse-fonts (0.0.5) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/discourse-fonts-0.0.5.gemspec
    استخدام multipart-post 2.1.1
    1:  multipart-post (2.1.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/multipart-post-2.1.1.gemspec
    جلب ruby2_keywords 0.0.4
    جلب faraday-net_http 1.0.1
    تثبيت faraday-net_http 1.0.1
    تثبيت ruby2_keywords 0.0.4
    2:  faraday-net_http (1.0.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/faraday-net_http-1.0.1.gemspec
    1:  ruby2_keywords (0.0.4) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/ruby2_keywords-0.0.4.gemspec
    استخدام fast_blank 1.0.0
    2:  fast_blank (1.0.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/fast_blank-1.0.0.gemspec
    استخدام fast_xs 0.8.0
    2:  fast_xs (0.8.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/fast_xs-0.8.0.gemspec
    جلب fastimage 2.2.1
    جلب ffi 1.14.2
    تثبيت fastimage 2.2.1
    0:  chunky_png (1.4.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/chunky_png-1.4.0.gemspec
    استخدام gc_tracer 1.5.1
    0:  gc_tracer (1.5.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/gc_tracer-1.5.1.gemspec
    استخدام guess_html_encoding 0.0.11
    0:  guess_html_encoding (0.0.11) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/guess_html_encoding-0.0.11.gemspec
    استخدام hashie 4.1.0
    0:  hashie (4.1.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/hashie-4.1.0.gemspec
    استخدام highline 2.0.3
    0:  highline (2.0.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/highline-2.0.3.gemspec
    استخدام hkdf 0.3.0
    0:  hkdf (0.3.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/hkdf-0.3.0.gemspec
    استخدام htmlentities 4.3.4
    0:  htmlentities (4.3.4) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/htmlentities-4.3.4.gemspec
    استخدام http_accept_language 2.1.1
    0:  http_accept_language (2.1.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/http_accept_language-2.1.1.gemspec
    2:  fastimage (2.2.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/fastimage-2.2.1.gemspec
    استخدام jwt 2.2.2
    جلب json 2.5.1
    2:  jwt (2.2.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/jwt-2.2.2.gemspec
    استخدام kgio 2.11.3
    2:  kgio (2.11.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/kgio-2.11.3.gemspec
    استخدام libv8 8.4.255.0 (x86_64-linux)
    2:  libv8 (8.4.255.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/libv8-8.4.255.0-x86_64-linux.gemspec
    استخدام logstash-event 1.2.02
    2:  logstash-event (1.2.02) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/logstash-event-1.2.02.gemspec
    جلب logster 2.9.5
    تثبيت ffi 1.14.2 مع الامتدادات الأصلية
    تثبيت json 2.5.1 مع الامتدادات الأصلية
    تثبيت logster 2.9.5
    بناء الامتدادات الأصلية. قد يستغرق هذا بعض الوقت...
    3:  racc (1.5.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/racc-1.5.2.gemspec
    2:  logster (2.9.5) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/logster-2.9.5.gemspec
    استخدام lru_redux 1.1.0
    3:  lru_redux (1.1.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/lru_redux-1.1.0.gemspec
    استخدام lz4-ruby 0.3.3
    3:  lz4-ruby (0.3.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/lz4-ruby-0.3.3.gemspec
    استخدام maxminddb 0.1.22
    3:  maxminddb (0.1.22) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/maxminddb-0.1.22.gemspec
    استخدام memory_profiler 1.0.0
    3:  memory_profiler (1.0.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/memory_profiler-1.0.0.gemspec
    استخدام redis 4.2.5
    3:  redis (4.2.5) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/redis-4.2.5.gemspec
    استخدام multi_json 1.15.0
    2:  multi_json (1.15.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/multi_json-1.15.0.gemspec
    استخدام multi_xml 0.6.0
    2:  multi_xml (0.6.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/multi_xml-0.6.0.gemspec
    استخدام mustache 1.1.1
    2:  mustache (1.1.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/mustache-1.1.1.gemspec
    استخدام nio4r 2.5.4
    جلب mini_sql 1.0.1
    2:  nio4r (2.5.4) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/nio4r-2.5.4.gemspec
    جلب oauth 0.5.5
    تثبيت oauth 0.5.5
    تثبيت mini_sql 1.0.1
    3:  mini_sql (1.0.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/mini_sql-1.0.1.gemspec
    2:  oauth (0.5.5) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/oauth-0.5.5.gemspec
    استخدام optimist 3.0.1
    2:  optimist (3.0.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/optimist-3.0.1.gemspec
    استخدام pg 1.2.3
    جلب oj 3.11.1
    2:  pg (1.2.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/pg-1.2.3.gemspec
    استخدام r2 0.2.7
    2:  r2 (0.2.7) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/r2-0.2.7.gemspec
    استخدام raindrops 0.19.1
    2:  raindrops (0.19.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/raindrops-0.19.1.gemspec
    استخدام rchardet 1.8.0
    2:  rchardet (1.8.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/rchardet-1.8.0.gemspec
    استخدام rinku 2.0.6
    2:  rinku (2.0.6) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/rinku-2.0.6.gemspec
    استخدام rotp 6.2.0
    2:  rotp (6.2.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/rotp-6.2.0.gemspec
    جلب rqrcode_core 0.2.0
    تثبيت rqrcode_core 0.2.0
    تثبيت oj 3.11.1 مع الامتدادات الأصلية
    2:  rqrcode_core (0.2.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/rqrcode_core-0.2.0.gemspec
    استخدام rtlit 0.0.5
    2:  rtlit (0.0.5) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/rtlit-0.0.5.gemspec
    استخدام rubyzip 2.3.0
    2:  rubyzip (2.3.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/rubyzip-2.3.0.gemspec
    استخدام tilt 2.0.10
    2:  tilt (2.0.10) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/tilt-2.0.10.gemspec
    استخدام sshkey 2.0.0
    2:  sshkey (2.0.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/sshkey-2.0.0.gemspec
    استخدام stackprof 0.2.16
    2:  stackprof (0.2.16) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/stackprof-0.2.16.gemspec
    استخدام unf_ext 0.0.7.7
    2:  unf_ext (0.0.7.7) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/unf_ext-0.0.7.7.gemspec
    استخدام xorcist 1.1.2
    2:  xorcist (1.1.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/xorcist-1.1.2.gemspec
    استخدام tzinfo 1.2.9
    2:  tzinfo (1.2.9) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/tzinfo-1.2.9.gemspec
    استخدام rack-test 1.1.0
    2:  rack-test (1.1.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/rack-test-1.1.0.gemspec
    استخدام request_store 1.5.0
    2:  request_store (1.5.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/request_store-1.5.0.gemspec
    استخدام message_bus 3.3.4
    2:  message_bus (3.3.4) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/message_bus-3.3.4.gemspec
    جلب rack-mini-profiler 2.3.0
    تثبيت rack-mini-profiler 2.3.0
    بناء الامتدادات الأصلية. قد يستغرق هذا بعض الوقت...
    بناء الامتدادات الأصلية. قد يستغرق هذا بعض الوقت...
    2:  rack-mini-profiler (2.3.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/rack-mini-profiler-2.3.0.gemspec
    استخدام rack-protection 2.1.0
    2:  rack-protection (2.1.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/rack-protection-2.1.0.gemspec
    استخدام mail 2.7.1
    2:  mail (2.7.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/mail-2.7.1.gemspec
    استخدام addressable 2.7.0
    2:  addressable (2.7.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/addressable-2.7.0.gemspec
    استخدام aws-sigv4 1.2.2
    2:  aws-sigv4 (1.2.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/aws-sigv4-1.2.2.gemspec
    استخدام ember-data-source 3.0.2
    2:  ember-data-source (3.0.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/ember-data-source-3.0.2.gemspec
    استخدام barber 0.12.2
    2:  barber (0.12.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/barber-0.12.2.gemspec
    استخدام uglifier 4.2.0
    2:  uglifier (4.2.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/uglifier-4.2.0.gemspec
    استخدام bootsnap 1.5.1
    2:  bootsnap (1.5.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/bootsnap-1.5.1.gemspec
    استخدام cose 1.2.0
    2:  cose (1.2.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/cose-1.2.0.gemspec
    استخدام pry 0.13.1
    2:  pry (0.13.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/pry-0.13.1.gemspec
    جلب i18n 1.8.7
    تثبيت i18n 1.8.7

    تنبيه! غيرت الإصدار 1.1 من i18n إعدادات الاحتياط لاستبعاد اللغة الافتراضية.
    لكن هذا قد يكسر تطبيقك.

    إذا كنت ترقي تطبيق Rails الخاص بك من إصدار أقدم من Rails:

    يرجى التحقق من تطبيق Rails الخاص بك بحثاً عن 'config.i18n.fallbacks = true'.
    إذا كنت تستخدم I18n (>= 1.1.0) و Rails (< 5.2.2)، فيجب أن يكون
    'config.i18n.fallbacks = [I18n.default_locale]'.
    وإلا، فإن إعدادات الاحتياط ستكون معطلة في تطبيقك بواسطة I18n 1.1.x.

    إذا كنت تبدأ تطبيق Rails جديد، يمكنك تجاهل هذا الإشعار.

    لمزيد من المعلومات انظر:
    https://github.com/svenfuchs/i18n/releases/tag/v1.1.0

    2:  i18n (1.8.7) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/i18n-1.8.7.gemspec
    استخدام sprockets 3.7.2
    2:  sprockets (3.7.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/sprockets-3.7.2.gemspec
    استخدام discourse_image_optim 0.26.2
    2:  discourse_image_optim (0.26.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/discourse_image_optim-0.26.2.gemspec
    جلب faraday 1.3.0
    تثبيت faraday 1.3.0
    2:  faraday (1.3.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/faraday-1.3.0.gemspec
    استخدام omniauth 1.9.1
    2:  omniauth (1.9.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/omniauth-1.9.1.gemspec
    استخدام webpush 1.1.0
    2:  webpush (1.1.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/webpush-1.1.0.gemspec
    استخدام mini_racer 0.3.1
    2:  mini_racer (0.3.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/mini_racer-0.3.1.gemspec
    استخدام logstash-logger 0.26.1
    2:  logstash-logger (0.26.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/logstash-logger-0.26.1.gemspec
    جلب nokogiri 1.11.1 (x86_64-linux)
    تثبيت nokogiri 1.11.1 (x86_64-linux)
    2:  nokogiri (1.11.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/nokogiri-1.11.1-x86_64-linux.gemspec
    جلب sidekiq 6.1.3
    تثبيت sidekiq 6.1.3
    2:  sidekiq (6.1.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/sidekiq-6.1.3.gemspec
    0:  json (2.5.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/json-2.5.1.gemspec
    استخدام redis-namespace 1.8.0
    2:  redis-namespace (1.8.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/redis-namespace-1.8.0.gemspec
    استخدام puma 5.1.1
    2:  puma (5.1.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/puma-5.1.1.gemspec
    جلب unicorn 5.8.0
    جلب rqrcode 1.2.0
    تثبيت rqrcode 1.2.0
    تثبيت unicorn 5.8.0 مع الامتدادات الأصلية
    0:  rqrcode (1.2.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/rqrcode-1.2.0.gemspec
    استخدام unf 0.1.4
    0:  unf (0.1.4) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/unf-0.1.4.gemspec
    استخدام aws-sdk-core 3.109.2
    0:  aws-sdk-core (3.109.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/aws-sdk-core-3.109.2.gemspec
    جلب css_parser 1.8.0
    تثبيت css_parser 1.8.0
    بناء الامتدادات الأصلية. قد يستغرق هذا بعض الوقت...
    0:  css_parser (1.8.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/css_parser-1.8.0.gemspec
    استخدام pry-byebug 3.9.0
    0:  pry-byebug (3.9.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/pry-byebug-3.9.0.gemspec
    استخدام pry-rails 0.3.9
    0:  pry-rails (0.3.9) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/pry-rails-0.3.9.gemspec
    استخدام activesupport 6.0.3.3
    0:  activesupport (6.0.3.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/activesupport-6.0.3.3.gemspec
    استخدام ember-handlebars-template 0.8.0
    0:  ember-handlebars-template (0.8.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/ember-handlebars-template-0.8.0.gemspec
    استخدام oauth2 1.4.4
    0:  oauth2 (1.4.4) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/oauth2-1.4.4.gemspec
    استخدام omniauth-oauth 1.1.0
    0:  omniauth-oauth (1.1.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/omniauth-oauth-1.1.0.gemspec
    جلب loofah 2.9.0
    تثبيت loofah 2.9.0
    0:  loofah (2.9.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/loofah-2.9.0.gemspec
    استخدام nokogumbo 2.0.4
    0:  nokogumbo (2.0.4) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/nokogumbo-2.0.4.gemspec
    استخدام ruby-readability 0.7.0
    0:  ruby-readability (0.7.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/ruby-readability-0.7.0.gemspec
    استخدام mini_scheduler 0.13.0
    0:  mini_scheduler (0.13.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/mini_scheduler-0.13.0.gemspec
    استخدام aws-sdk-kms 1.39.0
    0:  aws-sdk-kms (1.39.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/aws-sdk-kms-1.39.0.gemspec
    استخدام aws-sdk-sns 1.35.0
    0:  aws-sdk-sns (1.35.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/aws-sdk-sns-1.35.0.gemspec
    استخدام rails-dom-testing 2.0.3
    0:  rails-dom-testing (2.0.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/rails-dom-testing-2.0.3.gemspec
    استخدام globalid 0.4.2
    0:  globalid (0.4.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/globalid-0.4.2.gemspec
    استخدام activemodel 6.0.3.3
    0:  activemodel (6.0.3.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/activemodel-6.0.3.3.gemspec
    جلب omniauth-oauth2 1.7.1
    تثبيت omniauth-oauth2 1.7.1
    0:  omniauth-oauth2 (1.7.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/omniauth-oauth2-1.7.1.gemspec
    استخدام omniauth-twitter 1.4.0
    0:  omniauth-twitter (1.4.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/omniauth-twitter-1.4.0.gemspec
    استخدام rails-html-sanitizer 1.3.0
    0:  rails-html-sanitizer (1.3.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/rails-html-sanitizer-1.3.0.gemspec
    استخدام activejob 6.0.3.3
    0:  activejob (6.0.3.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/activejob-6.0.3.3.gemspec
    استخدام active_model_serializers 0.8.4
    0:  active_model_serializers (0.8.4) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/active_model_serializers-0.8.4.gemspec
    استخدام activerecord 6.0.3.3
    0:  activerecord (6.0.3.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/activerecord-6.0.3.3.gemspec
    استخدام aws-sdk-s3 1.83.2
    0:  aws-sdk-s3 (1.83.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/aws-sdk-s3-1.83.2.gemspec
    جلب sanitize 5.2.3
    تثبيت sanitize 5.2.3
    0:  sanitize (5.2.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/sanitize-5.2.3.gemspec
    استخدام actionview 6.0.3.3
    0:  actionview (6.0.3.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/actionview-6.0.3.3.gemspec
    استخدام omniauth-facebook 8.0.0
    0:  omniauth-facebook (8.0.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/omniauth-facebook-8.0.0.gemspec
    استخدام omniauth-github 1.4.0
    0:  omniauth-github (1.4.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/omniauth-github-1.4.0.gemspec
    استخدام omniauth-google-oauth2 0.8.1
    0:  omniauth-google-oauth2 (0.8.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/omniauth-google-oauth2-0.8.1.gemspec
    استخدام seed-fu 2.3.9
    0:  seed-fu (2.3.9) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/seed-fu-2.3.9.gemspec
    جلب onebox 2.2.2
    تثبيت onebox 2.2.2
    0:  onebox (2.2.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/onebox-2.2.2.gemspec
    استخدام actionpack 6.0.3.3
    0:  actionpack (6.0.3.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/actionpack-6.0.3.3.gemspec
    استخدام actionview_precompiler 0.2.3
    0:  actionview_precompiler (0.2.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/actionview_precompiler-0.2.3.gemspec
    استخدام actionmailer 6.0.3.3
    0:  actionmailer (6.0.3.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/actionmailer-6.0.3.3.gemspec
    استخدام railties 6.0.3.3
    0:  railties (6.0.3.3) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/railties-6.0.3.3.gemspec
    استخدام rails_failover 0.6.5
    0:  rails_failover (0.6.5) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/rails_failover-0.6.5.gemspec
    استخدام rails_multisite 2.5.0
    0:  rails_multisite (2.5.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/rails_multisite-2.5.0.gemspec
    استخدام sprockets-rails 3.2.2
    0:  sprockets-rails (3.2.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/sprockets-rails-3.2.2.gemspec
    استخدام jquery-rails 4.4.0
    0:  jquery-rails (4.4.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/jquery-rails-4.4.0.gemspec
    استخدام lograge 0.11.2
    0:  lograge (0.11.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/lograge-0.11.2.gemspec
    استخدام discourse-ember-rails 0.18.6
    0:  discourse-ember-rails (0.18.6) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/discourse-ember-rails-0.18.6.gemspec
    2:  unicorn (5.8.0) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/unicorn-5.8.0.gemspec
    3:  oj (3.11.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/oj-3.11.1.gemspec
    1:  ffi (1.14.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/ffi-1.14.2.gemspec
    استخدام rbtrace 0.4.14
    استخدام sassc 2.0.1
    2:  rbtrace (0.4.14) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/rbtrace-0.4.14.gemspec
    3:  sassc (2.0.1) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/sassc-2.0.1.gemspec
    استخدام sassc-rails 2.1.2
    جلب mini_suffix 0.3.2
    1:  sassc-rails (2.1.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/sassc-rails-2.1.2.gemspec
    تثبيت mini_suffix 0.3.2
    0:  mini_suffix (0.3.2) من /var/www/discourse/vendor/bundle/ruby/2.7.0/specifications/mini_suffix-0.3.2.gemspec
    اكتمل الحزمة! 123 اعتمادات ملف Gemfile، تم تثبيت 161 جوهرة الآن.
    لم يتم تثبيت الجواهر الموجودة في المجموعات test و development.
    تم تثبيت الجواهر المعبأة في `./vendor/bundle`
    رسالة ما بعد التثبيت من i18n:

    تنبيه! غيرت الإصدار 1.1 من i18n إعدادات الاحتياط لاستبعاد اللغة الافتراضية.
    لكن هذا قد يكسر تطبيقك.

    إذا كنت ترقي تطبيق Rails الخاص بك من إصدار أقدم من Rails:

    يرجى التحقق من تطبيق Rails الخاص بك بحثاً عن 'config.i18n.fallbacks = true'.
    إذا كنت تستخدم I18n (>= 1.1.0) و Rails (< 5.2.2)، فيجب أن يكون
    'config.i18n.fallbacks = [I18n.default_locale]'.
    وإلا، فإن إعدادات الاحتياط ستكون معطلة في تطبيقك بواسطة I18n 1.1.x.

    إذا كنت تبدأ تطبيق Rails جديد، يمكنك تجاهل هذا الإشعار.

    لمزيد من المعلومات انظر:
    https://github.com/svenfuchs/i18n/releases/tag/v1.1.0


    I, [2021-01-27T02:24:39.339282 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake plugin:pull_compatible_all'
    I, [2021-01-27T02:24:43.515304 #1]  INFO -- : discourse-solved is already at latest compatible version
    docker_manager is already at latest compatible version
    discourse-feature-voting is already at latest compatible version

    I, [2021-01-27T02:24:43.515578 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
    rake aborted!
    StandardError: حدث خطأ، تم إلغاء جميع عمليات الترحيل اللاحقة:

    PG::SyntaxError: ERROR:  خطأ في الصيغة عند أو بالقرب من "NOT"
    LINE 2: ADD COLUMN IF NOT EXISTS image_upload_id bigint
                          ^
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rack-mini-profiler-2.3.0/lib/patches/db/pg.rb:110:in `exec'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rack-mini-profiler-2.3.0/lib/patches/db/pg.rb:110:in `async_exec'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/postgresql/database_statements.rb:92:in `block (2 levels) in execute'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/dependencies/interlock.rb:48:in `block in permit_concurrent_loads'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/dependencies/interlock.rb:47:in `permit_concurrent_loads'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/postgresql/database_statements.rb:91:in `block in execute'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/abstract_adapter.rb:722:in `block (2 levels) in log'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/concurrency/load_interlock_aware_monitor.rb:26:in `block (2 levels) in synchronize'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/abstract_adapter.rb:721:in `block in log'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/notifications/instrumenter.rb:24:in `instrument'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/abstract_adapter.rb:712:in `log'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/postgresql/database_statements.rb:90:in `execute'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:890:in `block in method_missing'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:858:in `block in say_with_time'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:858:in `say_with_time'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:879:in `method_missing'
    /var/www/discourse/db/migrate/20200429095034_add_topic_thumbnail_information.rb:9:in `up'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:831:in `exec_migration'
    /var/www/discourse/lib/freedom_patches/schema_migration_details.rb:9:in `block in exec_migration'
    /var/www/discourse/lib/freedom_patches/schema_migration_details.rb:8:in `exec_migration'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:812:in `block (2 levels) in migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:811:in `block in migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:471:in `with_connection'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:810:in `migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1002:in `migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1310:in `block in execute_migration_in_transaction'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1363:in `ddl_transaction'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1309:in `execute_migration_in_transaction'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1281:in `block in migrate_without_lock'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1280:in `each'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1280:in `migrate_without_lock'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1229:in `block in migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1382:in `with_advisory_lock'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1229:in `migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1061:in `up'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1036:in `migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/tasks/database_tasks.rb:238:in `migrate'
    /var/www/discourse/lib/tasks/db.rake:215:in `block in <main>'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rake-13.0.3/exe/rake:27:in `<top (required)>'
    /usr/local/bin/bundle:23:in `load'
    /usr/local/bin/bundle:23:in `<main>'

    السبب:
    ActiveRecord::StatementInvalid: PG::SyntaxError: ERROR:  خطأ في الصيغة عند أو قرب "NOT"
    السطر 2: ADD COLUMN IF NOT EXISTS image_upload_id bigint
                          ^
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rack-mini-profiler-2.3.0/lib/patches/db/pg.rb:110:in `exec'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rack-mini-profiler-2.3.0/lib/patches/db/pg.rb:110:in `async_exec'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/postgresql/database_statements.rb:92:in `block (2 levels) in execute'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/dependencies/interlock.rb:48:in `block in permit_concurrent_loads'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/dependencies/interlock.rb:47:in `permit_concurrent_loads'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/postgresql/database_statements.rb:91:in `block in execute'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/abstract_adapter.rb:722:in `block (2 levels) in log'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/concurrency/load_interlock_aware_monitor.rb:26:in `block (2 levels) in synchronize'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/abstract_adapter.rb:721:in `block in log'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/notifications/instrumenter.rb:24:in `instrument'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/abstract_adapter.rb:712:in `log'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/postgresql/database_statements.rb:90:in `execute'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:890:in `block in method_missing'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:858:in `block in say_with_time'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:858:in `say_with_time'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:879:in `method_missing'
    /var/www/discourse/db/migrate/20200429095034_add_topic_thumbnail_information.rb:9:in `up'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:831:in `exec_migration'
    /var/www/discourse/lib/freedom_patches/schema_migration_details.rb:9:in `block in exec_migration'
    /var/www/discourse/lib/freedom_patches/schema_migration_details.rb:8:in `exec_migration'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:812:in `block (2 levels) in migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:811:in `block in migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:471:in `with_connection'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:810:in `migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1002:in `migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1310:in `block in execute_migration_in_transaction'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1363:in `ddl_transaction'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1309:in `execute_migration_in_transaction'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1281:in `block in migrate_without_lock'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1280:in `each'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1280:in `migrate_without_lock'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1229:in `block in migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1382:in `with_advisory_lock'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1229:in `migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1061:in `up'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1036:in `migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/tasks/database_tasks.rb:238:in `migrate'
    /var/www/discourse/lib/tasks/db.rake:215:in `block in <main>'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rake-13.0.3/exe/rake:27:in `<top (required)>'
    /usr/local/bin/bundle:23:in `load'
    /usr/local/bin/bundle:23:in `<main>'

    السبب:
    PG::SyntaxError: ERROR:  خطأ في الصيغة عند أو قرب "NOT"
    السطر 2: ADD COLUMN IF NOT EXISTS image_upload_id bigint
                          ^
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rack-mini-profiler-2.3.0/lib/patches/db/pg.rb:110:in `exec'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rack-mini-profiler-2.3.0/lib/patches/db/pg.rb:110:in `async_exec'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/postgresql/database_statements.rb:92:in `block (2 levels) in execute'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/dependencies/interlock.rb:48:in `block in permit_concurrent_loads'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/dependencies/interlock.rb:47:in `permit_concurrent_loads'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/postgresql/database_statements.rb:91:in `block in execute'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/abstract_adapter.rb:722:in `block (2 levels) in log'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/concurrency/load_interlock_aware_monitor.rb:26:in `block (2 levels) in synchronize'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/abstract_adapter.rb:721:in `block in log'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/notifications/instrumenter.rb:24:in `instrument'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/abstract_adapter.rb:712:in `log'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/postgresql/database_statements.rb:90:in `execute'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:890:in `block in method_missing'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:858:in `block in say_with_time'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:858:in `say_with_time'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:879:in `method_missing'
    /var/www/discourse/db/migrate/20200429095034_add_topic_thumbnail_information.rb:9:in `up'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:831:in `exec_migration'
    /var/www/discourse/lib/freedom_patches/schema_migration_details.rb:9:in `block in exec_migration'
    /var/www/discourse/lib/freedom_patches/schema_migration_details.rb:8:in `exec_migration'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:812:in `block (2 levels) in migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:811:in `block in migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:471:in `with_connection'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:810:in `migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1002:in `migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1310:in `block in execute_migration_in_transaction'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1363:in `ddl_transaction'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1309:in `execute_migration_in_transaction'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1281:in `block in migrate_without_lock'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1280:in `each'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1280:in `migrate_without_lock'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1229:in `block in migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1382:in `with_advisory_lock'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1229:in `migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1061:in `up'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/migration.rb:1036:in `migrate'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.3/lib/active_record/tasks/database_tasks.rb:238:in `migrate'
    /var/www/discourse/lib/tasks/db.rake:215:in `block in <main>'
    /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rake-13.0.3/exe/rake:27:in `<top (required)>'
    /usr/local/bin/bundle:23:in `load'
    /usr/local/bin/bundle:23:in `<main>'
    المهام: TOP => db:migrate
    (انظر التتبع الكامل بتشغيل المهمة مع --trace)
    I, [2021-01-27T02:24:48.903485 #1]  INFO -- : == 20200429095034 AddTopicThumbnailInformation: جارٍ الهجرة =====================
    -- execute("ALTER TABLE posts\nADD COLUMN IF NOT EXISTS image_upload_id bigint\n")

    I, [2021-01-27T02:24:48.903736 #1]  INFO -- : إنهاء العمليات غير المتزامنة
    I, [2021-01-27T02:24:48.903804 #1]  INFO -- : إرسال INT إلى HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main pid: 51
    I, [2021-01-27T02:24:48.903846 #1]  INFO -- : إرسال TERM إلى exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 168
    2021-01-27 02:24:48.903 UTC [51] LOG:  استُلم طلب الإغلاق السريع
    168:signal-handler (1611714288) استُلم SIGTERM جدولة الإغلاق...
    168:M 27 Jan 2021 02:24:48.954 # المستخدم طلب الإغلاق...
    168:M 27 Jan 2021 02:24:48.954 * حفظ لقطة RDB النهائية قبل الخروج.
    2021-01-27 02:24:48.962 UTC [51] LOG:  إلغاء أي معاملات نشطة
    2021-01-27 02:24:48.964 UTC [51] LOG:  العامل الخلفي "logical replication launcher" (PID 60) خرج برمز الخروج 1
    168:M 27 Jan 2021 02:24:48.964 * تم حفظ قاعدة البيانات على القرص
    168:M 27 Jan 2021 02:24:48.964 # Redis الآن جاهز للخروج، وداعاً...
    2021-01-27 02:24:48.964 UTC [55] LOG:  جارٍ الإغلاق
    2021-01-27 02:24:48.993 UTC [51] LOG:  نظام قاعدة البيانات مغلق


    فشل
    --------------------
    Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' فشل مع الإرجاع #<Process::Status: pid 3907 exit 1>
    موقع الفشل: /pups/lib/pups/exec_command.rb:112:in `spawn'
    فشلت التنفيذ مع المعلمات {"cd"=>"$home", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
    9ba41a79ae37ba9321d60a2acd46a9b36b4990af29b46ad2c2ba011938a2972f

هل تشغل مثيل PostgreSQL خارجيًا على نفس المضيف؟ ما الإصدار الذي يعمل به؟

نعم، إنه Amazon RDS لـ PostgreSQL، ومن المرجح أنه يعمل بإصدار PostgreSQL 9.5، نظرًا لأننا لم نقم بأي تحديثات منذ فترة طويلة.

فقط فضولي يسأل، هل هناك طريقة لتجاوز جزء الترقية مؤقتًا واستخدام الإصدار الحالي؟

أوه، إذا كنت تستخدم RDS، فإن الترقية تكون مجرد أمر واحد في واجهة سطر أوامر aws، أليس كذلك؟

حسنًا، واحدة لكل مرحلة من مراحل الرحلة: 9.5 → 9.6 → 10 → 11 → 12 :sweat_smile:

لقد أوقفنا دعم PG 9.5 في عام 2018، وكان حقيقة أنه كان يعمل حتى الآن لأنك كنت تستخدم إصدارًا قديمًا لم نستخدم فيه ميزات SQL الجديدة.

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

عظيم، أود معرفة المزيد حول كيفية التحول إلى عميل استضافة والتكاليف المرتبطة بذلك. هل يمكنك مشاركة المزيد من التفاصيل؟ ونقدر حقًا كل المساعدة التي قدمتها حتى الآن.

فقط أردتُ التحديث هنا بأن مشكلتنا قد حُلّت بعد ترقية RDS إلى أحدث إصدار. نقدر حقًا كل المساعدة والتوجيه هنا. شكرًا.

رائع يا @Bharat_singh! ستحصل أيضًا على بعض الفوائد الأداء الممتازة من PostgreSQL الأحدث.