تكوين Discourse لاستخدام خادم PostgreSQL منفصل

لدي نسخة Discourse مثبتة حديثًا تعمل عبر docker في جهاز افتراضي على Google Cloud. لدي حاليًا تحميل الملفات ونسخ Discourse الاحتياطية إلى حاويات على Google Cloud ممكّنة وتعمل هذه الوظائف بشكل صحيح بعد اتباع التعليمات الموجودة في موضوع تكوين موفر تخزين الكائنات المتوافق مع S3 لتحميل الملفات. يمكنني رؤية التحميلات التجريبية في الحاوية وعندما أنظر إلى عناوين URL للتحميل، تظهر جميع التحميلات عنوان URL الصحيح من شبكة توصيل المحتوى (CDN) لذلك يبدو أنها تسحب بشكل صحيح من الحاوية.

بعد ذلك، قمت بإنشاء مثيل PostgreSQL 15.2 على Google Cloud وقمت بإجراء إجراء إعداد قاعدة البيانات الموضح في المنشور الأول وقم بتكوين ملف app.yml أيضًا. المنفذ الافتراضي لـ PostgreSQL على Google Cloud هو 5432 لذلك تركت تلك الأسطر.
إذا استخدمت عنوان IP العام لمثيل postgres في تكوين app.yml، فعند إعادة بناء التطبيق، أحصل على ما يلي:

فشل
--------------------
Pups::ExecError: cd /var/www/discourse & su discourse -c 'bundle exec rake db:migrate' فشل مع العودة #<Process::Status: pid 1024 exit 1>
موقع الفشل: /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn'
فشل التنفيذ مع المعلمات {"cd"=>"$home", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
فشل التمهيد برمز خروج 1
** فشل التمهيد ** يرجى التمرير لأعلى والبحث عن رسائل خطأ سابقة، قد يكون هناك أكثر من رسالة واحدة.
قد يساعد ./discourse-doctor في تشخيص المشكلة.
a6a71b00bce378aa6334ae1c9fe103778d260bb699fe598f9685689e8b5ce450

فقط لمعرفة ما يحدث، حاولت استخدام عناوين IP الأخرى لمثيل postgres.
إذا استخدمت عنوان IP الخاص لمثيل postgres، أحصل على ما يلي:

فشل
--------------------
Pups::ExecError: cd /var/www/discourse & su discourse -c 'bundle exec rake db:migrate' فشل مع العودة #<Process::Status: pid 1024 exit 1>
موقع الفشل: /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn'
فشل التنفيذ مع المعلمات {"cd"=>"$home", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
فشل التمهيد برمز خروج 1
** فشل التمهيد ** يرجى التمرير لأعلى والبحث عن رسائل خطأ سابقة، قد يكون هناك أكثر من رسالة واحدة.
قد يساعد ./discourse-doctor في تشخيص المشكلة.
7333126c522eb51ace4d55ea89803eea54b96704baab70c322008cf2836ba47a

إذا استخدمت عنوان IP الصادر لمثيل postgres، أحصل على ما يلي:

فشل
--------------------
Pups::ExecError: cd /var/www/discourse & su discourse -c 'bundle exec rake db:migrate' فشل مع العودة #<Process::Status: pid 1026 exit 1>
موقع الفشل: /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn'
فشل التنفيذ مع المعلمات {"cd"=>"$home", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
فشل التمهيد برمز خروج 1
** فشل التمهيد ** يرجى التمرير لأعلى والبحث عن رسائل خطأ سابقة، قد يكون هناك أكثر من رسالة واحدة.
قد يساعد ./discourse-doctor في تشخيص المشكلة.
c588d2b6977b9e7d493b0b59bc694369cb7c2219de67d5886112ed16312626ae

باستخدام جميع عناوين IP المختلفة، تكون الرسائل الفاشلة متشابهة جدًا ولا تتلقى قاعدة بيانات postgres أي بيانات أو اتصالات على الإطلاق. هل لدى أي شخص أي رؤية حول ما أفعله بشكل خاطئ؟

أيضًا، هل مشكلتي ناتجة عن عدم استخدام Cloud SQL Auth Proxy على مثيل الجهاز الافتراضي؟ إذا كان الأمر كذلك، أعتقد أنني سأضطر إلى بناء برنامج نصي لتشغيل الوكيل وتوقيته قبل إعادة بناء التطبيق. هل لدى أي شخص أي رؤية حول ذلك؟

شكرا على وقتكم يا رفاق.