ما هو الأمر/العملية التي تبني الأصول المضمنة؟

ما هي العملية التي تنشئ أصول ورقة الأنماط أثناء البناء، على سبيل المثال /stylesheets/color_definitions_dark_1_1_603243e2b6c0b7xydx234the00538538bd705.css

أفترض أن هذه هي عملية التجميع؟

ما الذي قد يكون خاطئًا إذا كانت هذه مفقودة؟

هل يجب أن تبدأ هذه في الوجود كجزء من بدء تشغيل خادم ember-cli أو خادم rails؟

ما هو النهج الذي يجب أن أتخذه لبناء هذه في docker من صورة discourse القياسية أم يجب أن أتوقع وجودها بمجرد تشغيل الخوادم؟

إعجاب واحد (1)

يتم بناء أوراق الأنماط بواسطة تطبيق rails عند الطلب، لذلك من الناحية النظرية لا تحتاج إلى القيام بأي شيء يدويًا.

سيؤدي تشغيل bin/rake assets:precompile إلى تجميعها بحماس، مما قد يكون مفيدًا إذا كنت ترغب في إنشاء صورة Docker محسّنة للنشر على مضيفين متعددين.

4 إعجابات

شكرا ديفيد، هذا يضيق نطاق تحقيقي بشكل جيد

إعجابَين (2)

آها! لطالما تساءلت عن ذلك.

إذا كانت على S3 وتم تجميعها عند الطلب، فهل يتم تحميلها أيضًا إلى S3؟

إعجابَين (2)

الأصول المجمعة عند الطلب (مثل أوراق الأنماط، و JavaScript الخاص بالمظهر، و SVG-sprites) لا يتم تحميلها إلى S3. يتم جلبها مباشرة من التطبيق (أو عبر CDN_URL، إذا تم تكوينها).

الأشياء الثابتة مثل JavaScript الأساسي/الإضافي والمحليات يتم إنشاؤها بواسطة assets:precompile، وهي مضمونة ألا تتغير أبدًا في وقت التشغيل.

إعجابَين (2)

أرى؛ هذا يساعد في تفسير سبب تقديم بعض الأشياء بواسطة التطبيق. إذا كان هناك حاويات متعددة قيد التشغيل (على سبيل المثال، خلف موازن تحميل)، فسيقوم كل منها بإنشاء هذه عند الطلب.

إعجابَين (2)

نعم، بالضبط. تميل هذه الأشياء أيضًا إلى التخزين المؤقت في postgres/redis لذلك لا تحتاج إلا إلى إنشائها بواسطة حاوية التطبيق الأولى التي تتلقى طلبًا. يمكن للحاويات الأخرى بعد ذلك جلب النسخة المجمعة بسرعة من redis/postgres وكتابتها إلى نظام الملفات.

إعجابَين (2)

وإذا كانت هناك شبكة توصيل محتوى (CDN)، فقد لا يحتاجون حتى إلى ذلك، على ما أعتقد.

أنا أعمل مع شخص يبدو أن لديه مشكلة في عدم تحميل بعض الأصول (بعض الأيقونات تظهر كبيرة جدًا) وأبحث عن بعض التوضيح.

إعجابَين (2)

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