دليل الإعداد اليدوي

يمكن استخدام تدفق توفير المتطلبات اللازمة في خادم وضع العلامات على Cloud Run ببضع نقرات فقط. إذا كنت تريد توفير خادم وضع العلامات في بيئات أخرى، يمكنك إجراء ذلك يدويًا. خادم وضع العلامات هو خادم Node.js داخل صورة Docker.

يتطلب توفير المتطلبات اللازمة لخادم وضع العلامات يدويًا توفير مجموعة وضع العلامات من جهة الخادم (SST) وخادم معاينة بشكل منفصل. تُعد مجموعة SST نقطة الدخول لجميع الطلبات إلى خادم وضع العلامات وستعالج الطلبات كما هو موضّح في مقدمة عن وضع العلامات من جهة الخادم. هناك حاجة إلى خادم المعاينة لمعاينة الحاوية.

انظر الشكل 1 للحصول على رسم توضيحي لتفاعل البيانات بين خوادم وضع العلامات وخادم المعاينة.

رسم بياني لوضع العلامات على الخوادم ومعاينة تدفق بيانات الخادم

الشكل 1: رسم بياني لخوادم وضع العلامات وتدفق بيانات خادم المعاينة

يوضّح هذا الدليل كيفية:

  • اطّلِع على جميع الإعدادات المتاحة لصورة Docker.
  • (اختياري) تضمين بيانات اعتماد BigQuery
  • توفير خادم معاينة يدويًا باستخدام صورة SST Docker.
  • توفير مجموعة SST يدويًا باستخدام صورة SST Docker.
  • تحقَّق من ضبط خادم المعاينة ومجموعة تكنولوجيا SST بشكلٍ صحيح.
  • الحفاظ على تحديث إصدار خادم وضع العلامات بعد توفير الخادم.

لتشغيل أوامر Docker في هذا الدليل، عليك أولاً تثبيت Docker على جهاز الكمبيوتر.

عرض جميع الإعدادات المتاحة لصورة Docker

يمكن العثور على صورة Docker لخادم وضع العلامات على عنوان URL التالي:

gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable

يستخدم خادم وضع العلامات وخادم المعاينة صورة Docker نفسها بعلامات مختلفة. في هذا القسم، سنتعرف على كيفية البحث عن جميع الإعدادات المتاحة التي يمكن استخدامها مع صورة Docker.

للاطّلاع على جميع الإعدادات المتاحة، يمكنك تشغيل ما يلي باستخدام أداة سطر أوامر Dockker:

docker run gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable server_bin.js --help

(اختياري) تضمين بيانات اعتماد Google Cloud

لاستخدام واجهة برمجة التطبيقات BigQuery أو Firestore خارج Google Cloud، عليك توفير بيانات اعتماد حساب خدمة مصرَّح لها بالوصول إلى هذه الموارد.

  1. اتّبِع هذا الدليل لإنشاء حساب خدمة بدور محرِّر بيانات BigQuery للوصول إلى BigQuery أو دور مستخدم Cloud Datastore للوصول إلى Firestore وتصدير بيانات اعتماد JSON باستخدام اسم الملف local_service_account_key.json.
  2. حمِّل بيانات اعتماد JSON في وحدة تخزين يمكن الوصول إليها من الصورة. باستخدام docker run، يمكنك تحديد -v local_service_account_key.json:/app/service_account_key.json لتثبيت بيانات الاعتماد في الصورة.
  3. وجِّه متغير بيئة GOOGLE_APPLICATION_CREDENTIALS إلى بيانات الاعتماد.
  4. يمكنك اختياريًا تحديد رقم تعريف مشروعك على Google Cloud في متغيّر بيئة GOOGLE_CLOUD_PROJECT للسماح لخادم وضع العلامات باختيار المشروع ضمنيًا.
  5. شغِّل الخادم. يقوم الأمر التالي بتشغيل خادم وضع العلامات باستخدام بيانات الاعتماد المضمنة:

    docker run -v local_service_account_key.json:/app/service_account_key.json \
    -p 8080:8080 \
    -e GOOGLE_APPLICATION_CREDENTIALS='/app/service_account_key.json' \
    -e GOOGLE_CLOUD_PROJECT='<your project id>' \
    -e CONTAINER_CONFIG='<config string>' \
    gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable
    

واعتمادًا على النظام الذي يتم نشر خادم وضع العلامات عليه، قد تكون هناك طرق مختلفة لتحميل بيانات الاعتماد. على سبيل المثال، يقدم Kubernetes وDocker Swarm أدلة لإدارة الأسرار. ارجع إلى دليل النظام المعني لمزيد من المعلومات.

احرص على اتّباع أفضل الممارسات لحماية بيانات الاعتماد الخاصة بك.

توفير خادم معاينة يدويًا

ويمكّنك خادم المعاينة من معاينة حاوية الخادم. لتشغيل خادم المعاينة، شغِّل صورة Docker مع متغيرات البيئة التالية التي يتم تمريرها إلى بيئة Docker.

الإعدادات المطلوبة

  • CONTAINER_CONFIG: سلسلة الإعدادات لحاوية الخادم في أداة "إدارة العلامات من Google"، انتقِل إلى مساحة عمل حاوية الخادم وانقر على رقم تعريف الحاوية في أعلى يسار الصفحة. انقر على إدارة خادم وضع العلامات يدويًا للعثور على قيمة تهيئة الحاوية.

  • RUN_AS_PREVIEW_SERVER - يجب ضبط هذا الإعداد على true لتوفير الخادم كخادم معاينة.

مثال باستخدام أداة سطر أوامر Docker

لتوفير خادم معاينة محليًا، يمكنك تشغيل ما يلي:

docker run -p 8080:8080 -e CONTAINER_CONFIG='<config string>' -e RUN_AS_PREVIEW_SERVER=true gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable

من المفترض أن يظهر لك ردّ 200 من طلب موجَّه إلى http://localhost:8080/healthz. يمكنك استخدام متغير بيئة PORT لتغيير المنفذ اختياريًا.

أفضل الممارسات

  • يجب نشر خادم معاينة واحد بالضبط. لا تضبط القياس التلقائي خارج مثيل واحد.
  • بعد إعداد خادم معاينة باستخدام Docker، يمكنك ضبط عنوان URL يستخدم HTTPS للإشارة إلى خادم المعاينة. وهذا الأمر ضروري لإعداد مجموعة SST.
  • يجب أن تكون مهلة جهاز موازنة الحمل أو شبكة توصيل المحتوى (CDN) أطول من 20 ثانية، وإلا لن يعمل وضع المعاينة بشكل صحيح.

توفير مجموعة وضع علامات من جهة الخادم يدويًا

تعمل مجموعة SST كنقطة دخول، وطلبات معاينة للخوادم الوكيلة إلى خادم المعاينة، كما تعالج جميع الطلبات الأخرى كما هو موضَّح في مقدمة عن وضع العلامات من جهة الخادم. استخدِم الإعدادات المطلوبة التالية مع صورة Docker لخادم وضع العلامات لتوفير مجموعة SST في أي بيئة تتوافق مع Docker.

الإعدادات المطلوبة

  • CONTAINER_CONFIG: سلسلة الإعدادات لحاوية الخادم في أداة "إدارة العلامات من Google"، انتقِل إلى مساحة عمل حاوية الخادم وانقر على رقم تعريف الحاوية في أعلى يسار الصفحة. انقر على إدارة خادم وضع العلامات يدويًا للعثور على قيمة تهيئة الحاوية.

  • PREVIEW_SERVER_URL: عنوان URL الذي يستخدم HTTPS لخادم المعاينة ويجب ضبط هذا الإعداد فقط لتوفير خادم وضع العلامات، ولا يلزم استخدامه لتوفير خادم المعاينة. راجِع القسم أعلاه للحصول على دليل حول إعداد خادم المعاينة.

مثال باستخدام أداة سطر أوامر Docker

لتوفير خادم وضع علامات محليًا، شغِّل ما يلي:

docker run -p 8080:8080 -e CONTAINER_CONFIG='<config string>' -e PREVIEW_SERVER_URL='<HTTPS preview server url>' gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable

من المفترض أن يظهر لك الردّ 200 من طلب مُرسَل إلى http://localhost:8080/healthz. يمكنك استخدام متغير بيئة PORT لتغيير المنفذ اختياريًا.

أفضل الممارسات

  • يمكن توفير خوادم وضع العلامات من جهة الخادم إما كخادم واحد أو كمجموعة. نقترح عليك توفيره كمجموعة لتحسين التوفُّر والقابلية للتوسّع والأداء. تجدر الإشارة إلى أنّه عند توفير المتطلبات اللازمة كمجموعة، يجب إعداد كل مثيل خادم باستخدام متغيّر بيئة CONTAINER_CONFIG وPREVIEW_SERVER_URL نفسهما.
  • تأكَّد من توجيه نشر مجموعة تكنولوجيا SST إلى نطاق فرعي جديد على موقعك الإلكتروني يكون منفصلاً عن النطاق الفرعي الذي يتضمّن تطبيقك. على سبيل المثال، إذا كان تطبيقك يعرض زيارات الويب على example.com، استخدِم نطاقًا فرعيًا مثل analytics.example.com لخادم وضع العلامات.
  • بعد إعداد مجموعة SST باستخدام Docker، يمكنك ضبط عنوان URL يستخدم HTTPS للإشارة إلى مجموعة SST.
  • تأكد من إعادة تشغيل الخوادم بشكل دوري للتأكد من أن الخوادم لديها آخر تحديثات التعليمات البرمجية لـ SST. وقد يؤدي عدم الالتزام بذلك إلى عدم توافق وظائف ميزات SST الجديدة. وتتمثل إحدى طرق معرفة متى يحتاج الخادم إلى إعادة التشغيل من خلال إعداد عمليات التحقق من الحياة، وهو ما هو موضح أدناه. تجدر الإشارة أيضًا إلى أنّ أيّ تحديثات منشورة لحاوية الخادم ستظل مطبّقة بدون إعادة تشغيل.
  • استخدِم نقطة نهاية /healthz الحالية (مثل https://analytics.example.com/healthz) على خوادم وضع العلامات لإعداد عمليات التحقّق من العمر. وتشير الاستجابة غير الصحية إلى أنه يجب إعادة تشغيل الخادم.
  • تتضمّن حاوية Docker أمرًا تلقائيًا للتحقّق من الصحة، وهو HEALTHCHECK CMD ["/nodejs/bin/node", "/app/health_checker_bin.js"]، الذي يطلب البحث عن نقطة نهاية /healthz بشكل دوري. إذا كنت تعتمد على التحقق من سلامة Docker، يمكنك تغيير الإعدادات باتّباع تعليمات Docker.
  • إذا كان خادم المعاينة وخادم وضع العلامات في المصدر نفسه، يمكنك استضافة خادم المعاينة على مسار مختلف عن خادم وضع العلامات. حدِّد PREVIEW_SERVER_URL بما في ذلك المسار.
  • يجب أن تحتوي الخوادم المُدارة على وحدة معالجة مركزية افتراضية واحدة كحد أقصى. ولا يتم استخدام وحدات معالجة مركزية افتراضية إضافية، ويؤثِّر ذلك سلبًا في القياس التلقائي.

التحقّق من الصحة

ضبط عنوان URL لحاوية الخادم

في أداة "إدارة العلامات من Google"، انتقِل إلى حاوية الخادم. ضمن المشرف > إعدادات الحاوية، ضَع عنوان URL لخادم وضع العلامات في حقل عنوان URL لحاوية الخادم وانقر على حفظ.

إثبات الملكية من خلال وضع المعاينة

في مساحة عمل أداة "إدارة العلامات من Google"، عايِن الحاوية بالنقر على معاينة وتأكّد من أنّه يتمّ تحميل صفحة المعاينة. في علامة تبويب أخرى في المتصفح، انتقل إلى أي مسار على عنوان URL لحاوية الخادم. إذا كانت صفحة المعاينة تعرض الطلب الذي تم إرساله، فسيتم إعداد كل شيء بشكل صحيح.

إذا كنت قد ربطت عدة نطاقات فرعية بخادم وضع علامات واحد وتريد معاينة كل نطاق فرعي، يمكنك إضافة عناوين URL إضافية لحاوية الخادم ضمن المشرف > إعدادات الحاوية. إذا توفّرت عناوين URL متعددة، يجب أن تتطابق جميع مسارات عناوين URL (سلسلة المعلومات التي تأتي بعد اسم النطاق). على سبيل المثال، يمكنك المعاينة على example.com/abc وexample2.com/abc، ولكن لا يمكنك المعاينة على example.com/abc وexample2.com/def. في حال إضافة عدة عناوين URL، سيظهر لك رمز بجانب الزر معاينة يتيح لك اختيار عنوان URL لمعاينته.

تعديل إصدار خادم وضع العلامات

تحتوي الصورة gtm-cloud-image على Node.js والمكتبات اللازمة لكي يعمل خادم وضع العلامات. يتم تحديث صورة Docker بشكل دوري للحصول على إصلاحات الأمان والميزات الجديدة. ننصحك بتحديث خادم وضع العلامات على الأقل لكل إصدار رئيسي للإصدار (على سبيل المثال، الترقية من الإصدار 1.x.x إلى 2.x.x).

لتعديل صورة Docker:

  1. يمكنك جلب نسخة الصورة الحالية في gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable.
  2. يمكنك نشر الخادم باستخدام الإعدادات نفسها التي تم استخدامها في عملية النشر السابقة.
  3. عدِّل خادم المعاينة الفردي وجميع خوادم وضع العلامات في المجموعة.
  4. إيقاف أي خوادم قديمة

للتحقّق من نجاح عملية التحديث:

  1. في حاوية الخادم، انقر على الزر معاينة لبدء جلسة تصحيح أخطاء جديدة وإرسال طلب في علامة تبويب منفصلة.
  2. في "الملخّص"، اختَر علامة التبويب وحدة التحكّم وتأكّد من عدم ظهور أيّ رسائل تطلب منك تحديث خادم وضع العلامات.

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