تعديل: حسنًا، استغرق الأمر مني 18 ساعة، لكن يبدو أن تعريف DISCOURSE_CDN_URL يمنع (على الأقل) هذا الموقع من إعادة البناء و/أو العمل بعد الاستعادة. أعتقد أن الخطوة التالية للاختبار هي إجراء عملية بناء دون استخدام DISCOURSE_CDN_URL، ثم تشغيل الحاوية مع تعيين متغير البيئة هذا.
ما كنت أعرفه مسبقًا
كان لدي هذه المشكلة أمس، لكنني ظننت أنها اختفت، لكن اتضح أنني استعدت قاعدة بيانات قديمة بشهر. استعادة قاعدة البيانات الحديثة تدمر الموقع.
تمكنت من بناء الموقع من الصفر، لذا لا توجد مشكلة في الكود أو في أي من الإضافات القياسية. لكن بعد استعادة قاعدة البيانات، يتعطل الموقع ولا يمكنني إجراء إعادة بناء، حتى لو حذفت قاعدة البيانات. لذا أعتقد أن المشكلة تكمن في ملف يتم قراءته أثناء ضغط ملفات الجافاسكريبت.
حاولت إزالة جميع background: image-url في ملف onebox.scss، مما سمح للموقع بإعادة البناء، لكن العرض أصبح مشوهًا تمامًا، لذا فإن هذه الأخطاء هي عرض للمشكلة وليست سببها.
أحصل على أخطاء مثل ما يلي في سجل rails بعد استعادة قاعدة البيانات (والملفات) أو أثناء إعادة البناء.
I, [2019-12-22T21:21:25.532604 #1] INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
NOTE: Inheriting Faraday::Error::ClientError is deprecated; use Faraday::ClientError instead. It will be removed in or after version 1.0
Faraday::Error::ClientError.inherited called from /var/www/discourse/plugins/discourse-github/gems/2.6.5/gems/octokit-4.14.0/lib/octokit/middleware/follow_redirects.rb:14.
> Seeding dark and light themes
[SassC::FunctionsHandler] undefined method `protocol' for nil:NilClass
rake aborted!
Discourse::ScssError: Error: error in C function image-url: undefined method `protocol' for nil:NilClass
on line 90 of app/assets/stylesheets/common/base/onebox.scss, in function `image-url`
from line 90 of app/assets/stylesheets/common/base/onebox.scss, in mixin `onebox-favicon`
from line 110 of app/assets/stylesheets/common/base/onebox.scss
from line 34 of app/assets/stylesheets/common.scss
from line 1 of desktop.scss
>> background: image-url("favicons/#{$image}.png") no-repeat 0% 50%;
----------------^
/var/www/discourse/lib/stylesheet/manager.rb:183:in `rescue in compile'
/var/www/discourse/lib/stylesheet/manager.rb:171:in `compile'
/var/www/discourse/lib/stylesheet/manager.rb:80:in `block (2 levels) in stylesheet_details'
/var/www/discourse/lib/stylesheet/manager.rb:66:in `each'
/var/www/discourse/lib/stylesheet/manager.rb:66:in `block in stylesheet_details'
/var/www/discourse/lib/stylesheet/manager.rb:64:in `synchronize'
/var/www/discourse/lib/stylesheet/manager.rb:64:in `stylesheet_details'
/var/www/discourse/lib/stylesheet/manager.rb:34:in `stylesheet_data'
/var/www/discourse/app/models/theme.rb:280:in `block in refresh_message_for_targets'
/var/www/discourse/app/models/theme.rb:279:in `map'
/var/www/discourse/app/models/theme.rb:279:in `refresh_message_for_targets'
/var/www/discourse/app/models/theme.rb:267:in `notify_theme_change'
/var/www/discourse/app/models/theme.rb:275:in `notify_theme_change'
/var/www/discourse/app/models/theme.rb:61:in `block in <class:Theme>'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/activesupport-6.0.1/lib/active_support/callbacks.rb:429:in `instance_exec'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/activesupport-6.0.1/lib/active_support/callbacks.rb:429:in `block in make_lambda'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/activesupport-6.0.1/lib/active_support/callbacks.rb:239:in `block in halting_and_conditional'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/activesupport-6.0.1/lib/active_support/callbacks.r