منذ 3 ساعات
أهلا بك عزيزي المتابع لموقع (journey for learn) نقدم دورات بكوبونات متاحة لاول 1000 تسجيل مجاني فقط وكوبونات اخري لفترة محدودة فاذا كنت تريد ان تحصل علي كل الكورسات علي موقعنا وان تكون اول المسجلين في الكورسات المجانية قم بتسجيل الدخول أوقم بالدخول علي وسائل التواصل الاجتماعي وخصوصا التليجرام نوضح الوصف المختصر والطويل للدورات لكي تعرف الدروس التي سوف تتعلمها بسهولة ويسر :
تغطية تفصيلية لنطاق الاختبار، تتوافق بيئة اختبار التدريب الشامل هذه مباشرةً مع التوقعات الهيكلية المتقدمة الموجودة في مقابلات DevOps الواقعية والهندسة السحابية وبنية النظام الخلفي.- أساسيات Docker (15%): كتابة ملفات Dockerfiles عالية التنظيم، وإدارة إعدادات عميقة متعددة الحاويات عبر Docker Compose، واستراتيجيات إبطال ذاكرة التخزين المؤقت للطبقة، وتجميع الصور، وتفاعلات Docker CLI المعقدة.
- تنسيق الحاويات (20%): تجميع على نطاق الإنتاج باستخدام بنية Docker Swarm وKubernetes، وتنفيذ شبكات التراكب، والتكوينات التعريفية، واكتشاف الخدمة، وآليات موازنة التحميل الداخلية المتقدمة.
- Docker Networking (10%): التعمق في برامج تشغيل الشبكة (الجسر، والمضيف، والتراكب، وmacvlan، ولا شيء)، وتكوينات تعيين المنافذ اليدوية، وأنماط الاتصال بين الحاويات، ومساحات أسماء شبكة Linux الأساسية، وتخطيط Docker DNS الداخلي.
- تخزين Docker (8%): تصميم دورات حياة البيانات المنفصلة باستخدام وحدات تخزين محددة، ووحدات ربط هيكلية، ووحدات ذاكرة tmpfs سريعة الزوال، وكتابة برامج تشغيل وحدات تخزين تابعة لجهات خارجية، واستراتيجيات استمرارية البيانات متعددة المضيف.
- Docker Security (12%): تنفيذ مصدر صارم للصور باستخدام Docker Content Trust (DCT)، والتعامل مع توقيع الصور المشفرة، وفرض عزل الحاويات على مستوى kernel، وكتابة سياسات أمان الشبكة، وإدارة أسرار الإنتاج باستخدام حدود البيئة وأنظمة Vault.
- خطوط أنابيب CI/CD (15%): خطوط أنابيب بناء أصلية متعددة المراحل داخل Jenkins، وعمليات نشر آلية تعتمد على Git عبر GitLab CI وGitHub Actions، وبناء علامات إصدار Docker Hub المثالية، وحقن مجموعات اختبار مؤتمتة في حاويات.
- استكشاف أخطاء Docker وإصلاحها (10%): تحليلات تدفق السجلات المتقدمة، وفحص الحاويات البرمجي، وتصحيح أخطاء الشبكة المسببة للجذر داخل Linux مساحات الأسماء، ومراقبة أداء الموارد، والتعامل مع حالات الأخطاء المعقدة.
- تحسين Docker (10%): إنشاء تصميمات بسيطة متعددة المراحل، وتقليل أحجام الصور الأساسية باستخدام تكوينات Alpine أو Distroless، والتعامل مع إدارة ذاكرة التخزين المؤقت بكفاءة، والتحكم في مقاييس استخدام موارد ذاكرة وقت التشغيل/وحدة المعالجة المركزية.
ما هو تعديل التحسين الذي يعزل طبقة التخزين المؤقت للحزمة لمنع التنزيلات عن بعد غير الضرورية؟
- أ) انقل إعلان WORKDIR /app لأسفل ليسبق كتلة تنفيذ CMD النهائية مباشرة.
- ب) استخدم وحدة تخزين tmpfs أثناء خطوة تنفيذ RUN npm ci للاحتفاظ بملفات التبعية المؤقتة.
- ج) قم بتبديل تخصيص الصورة الأساسية إلى نسخة غير قابلة للتوزيع والتي تتعامل مع تبعيات الحزمة أصلاً في وحدة تخزين المضيف.
- د) انسخ package.json package-lock.json ./، وقم بتشغيل RUN npm ci، ثم قم بإجراء نسخة منفصلة. . كتلة للتعليمات البرمجية المتبقية.
- هـ) قم بلف حلقة تثبيت التبعية داخل كتلة إنشاء واضحة متعددة المراحل تسمى من البداية.
- F) قم بإدخال تعليمات متغير البيئة (ENV CACHE_INVALIDATE=true) مباشرةً أعلى أمر تثبيت الحزمة الأساسية.
- الإجابة الصحيحة: D
- لماذا هي صحيحة: يعتمد Docker على إجابة تسلسلية آلية التخزين المؤقت للطبقة. تنشئ كل تعليمات في ملف Dockerfile طبقة صورة مميزة. عند تشغيل كتلة COPY، يقوم Docker بتحليل المجموع الاختباري للتشفير للملفات المستهدفة لتحديد ما إذا كان بإمكانه إعادة استخدام الطبقة المخزنة مؤقتًا. في الإعداد الأصلي، COPY . . يستورد كل شيء، مما يعني أن أي تغيير بسيط في ملف كود مصدر واحد يؤدي إلى إبطال ذاكرة التخزين المؤقت لتلك الطبقة. وبالتالي، يجب تنفيذ جميع الطبقات اللاحقة - بما في ذلك خطوة RUN npm ci كثيفة الموارد - من البداية. من خلال نسخ ملفات بيان الحزمة فقط أولاً، تظل طبقة RUN npm ci مخزنة مؤقتًا بالكامل ولم يتم لمسها ما لم تتغير التبعية فعليًا داخل package.json.
- لماذا تكون الخيارات البديلة غير صحيحة:
- الخيار أ غير صحيح: تغيير تسلسل WORKDIR لا يغير حقيقة أن الملفات لا تزال قيد النسخ قبل الأوان قبل تثبيت التبعيات.
- الخيار B غير صحيح: استخدام تركيب tmpfs يتغير حيث يتم الاحتفاظ بالملفات في الذاكرة أثناء تجميع ولكنه لا يمنع محرك تنفيذ الطبقة من إبطال صلاحية أجزاء ذاكرة التخزين المؤقت.
- الخيار C غير صحيح: الصور غير الموزعة تزيل مديري الحزم والأصداف بالكامل لتقليل البصمة، لكنها لا تدير الحزم المخصصة على مستوى التطبيق تلقائيًا.
- الخيار E غير صحيح: الصورة الأساسية المؤقتة فارغة تمامًا؛ فهو يفتقر إلى العقدة الضرورية وأوقات التشغيل الثنائية npm اللازمة لتنفيذ كتلة تثبيت التبعية.
- الخيار F غير صحيح: سيؤدي إدخال متغير بيئة ستؤدي تغييراته إلى فرض إبطال ذاكرة التخزين المؤقت بشكل صريح، وهو ما يفعل عكس ما يريد المطور تحقيقه تمامًا.
- أ) يتطلب Docker Compose تشغيل الحاويات على وضع الشبكة المضيفة الأصلية لإجراء تعيين DNS تلقائيًا بين الحاويات.
- ب) تحاول حاوية تطبيق API حل مجال قاعدة البيانات من خلال واجهة الاسترجاع الداخلية الخاصة بها بدلاً من الاعتماد على محرك DNS المضمن في Docker.
- ج) يفتقر تكوين خدمة قاعدة البيانات إلى اسم حاوية واضح: واصف خاصية db لتسجيل هوية المضيف الخاصة بها. عالميًا.
- د) تعمل الحاويات على شبكات جسر افتراضية مختلفة لأنه لم يتم تهيئتها بقواعد نشر منافذ صريحة.
- هـ) يفتقر النظام المضيف الأساسي إلى خريطة عنوان IP لخادم DNS خارجي صالح داخل ملف التشغيل /etc/resolv.conf الخاص به.
- و) يحظر PostgreSQL اتصالات الحاوية الواردة تلقائيًا ما لم يتم توقيع صورة قاعدة البيانات يدويًا باستخدام رمز Docker Content Trust المميز.
- الإجابة الصحيحة: ب
- لماذا هي صحيحة: يوفر Docker Compose تلقائيًا شبكة جسر معزولة افتراضية لجميع الخدمات المدرجة داخل ملف الإنشاء. تنضم كل خدمة إلى هذه الشبكة ويمكنها اكتشاف الحاويات الأخرى باستخدام أسماء الخدمات الخاصة بها كأسماء مضيف DNS صالحة. ومع ذلك، إذا تم تكوين إطار عمل التطبيق أو مكتبة عميل قاعدة البيانات داخل حاوية واجهة برمجة التطبيقات لتوجيه طلبات DNS بشكل صارم عبر الاسترجاع المحلي (127.0.0.1)، أو إذا تجاوز ملف محلل الحاوية القياسي تمامًا، فسوف يتجاوز خادم DNS المضمن في Docker (127.0.0.11). يؤدي هذا إلى فشل البحث عن قاعدة بيانات اسم المضيف على الفور.
- لماذا الخيارات البديلة غير صحيحة:
- الخيار أ غير صحيح: يؤدي استخدام وضع الشبكة المضيفة إلى إزالة عزل الشبكة تمامًا ويعطل في الواقع نظام تعيين أسماء اكتشاف خدمة DNS المضمن في Docker.
- الخيار C غير صحيح: إنشاء هويات الخرائط مباشرة بناءً على أسماء مفاتيح خدمة الجذر؛ تعتبر خاصية اسم الحاوية الصريحة اختيارية تمامًا لتتبع نظام أسماء النطاقات.
- الخيار د غير صحيح: نشر المنافذ باستخدام المنافذ: يعرض منافذ الحاوية لنظام المضيف الخارجي، ولكن ليس له أي تأثير على مسارات تحليل الاسم الداخلي بين الحاويات.
- الخيار E غير صحيح: الخطأ هو فشل في الحل الداخلي للاسم المستعار للحاوية؛ خوادم DNS الأولية الخارجية على المضيف ليست مسؤولة عن تعيين أسماء الحاويات.
- الخيار F غير صحيح: يتحقق Docker Content Trust من صحة الصورة ويمنع بدء الصور غير الموثوق بها، لكنه لا يغير اتصالات الشبكة الداخلية أو توفر المنفذ أثناء وقت التشغيل.
- أ) يتم مسح ملفات المضيف تلقائيًا لأن Docker يفرض مزامنة دورة الحياة المطلقة على جميع عمليات ربط الربط النشطة.
- ب) يتم نقل الملفات تلقائيًا إلى دليل عشوائي مُدار بواسطة النظام داخل /var/lib/docker/volumes/ لمنع الفساد.
- ج) تظل البيانات سليمة تمامًا على محرك تخزين المضيف لأن عمليات ربط الربط موجودة بشكل مستقل من دورة حياة الحاوية.
- د) تصبح السجلات للقراءة فقط وغير قابلة للقراءة بشكل دائم لأن طبقة الحاوية الجديدة تقوم بتعيين مجموعة جديدة من معرفات مستخدم مساحة الاسم العشوائية.
- هـ) يقوم برنامج تشغيل تخزين Docker تلقائيًا بضغط الدليل إلى بنية ملف .tar مستقلة لتوفير مساحة قرص النظام.
- و) تتعطل بنية الملف المضيف مع استثناء تعارض تثبيت الدليل حتى يتم إعادة تشغيل الخادم الأساسي.
- الإجابة الصحيحة: C
- لماذا هي صحيحة: تقوم عمليات ربط الربط بتعيين مسار ملف واضح محدد من قبل المستخدم على نظام الملفات المضيف مباشرة في مساحة دليل الحاوية. على عكس طبقات القراءة والكتابة للحاويات القياسية، والتي يتم تدميرها بالكامل جنبًا إلى جنب مع مثيل الحاوية، تشير عمليات ربط الربط إلى البنية التحتية الموجودة بشكل مستقل عن Docker. عند إيقاف حاوية أو إزالتها أو ترقيتها بالكامل إلى صورة جديدة، تظل البيانات الأساسية المخزنة في مسار المضيف محفوظة بالكامل ودون تغيير.
- لماذا تكون الخيارات البديلة غير صحيحة:
- الخيار أ غير صحيح: لا يحذف Docker أبدًا أدلة المضيف أثناء حلقات تدمير الحاويات القياسية عند إدارة عمليات ربط الربط.
- الخيار ب غير صحيح: يحدث نقل البيانات إلى /var/lib/docker/volumes/ فقط عند التعامل مع وحدات التخزين القياسية المجهولة أو المسماة التي تتم إدارتها بشكل صريح بواسطة Docker، وليس ربط التحميلات.
- الخيار D غير صحيح: بينما يجب أن تتماشى أذونات الملف مع المستخدم قيد التشغيل للحاوية، لا تصبح الملفات تالفة بشكل دائم أو غير قابلة للقراءة للنظام المضيف الأصلي.
- الخيار E غير صحيح: لا يقوم Docker بضغط دلائل المضيف أو إنشاء كتل بيانات أرشيف تلقائيًا عند إتلاف الحاويات أو تحديثها.
- الخيار F غير صحيح: يتم تحرير أقفال الملفات بشكل نظيف بمجرد خروج عملية الحاوية القديمة، مما يسمح لإصدار الصورة الجديد بتثبيت المسار فورًا دون إعادة تشغيل النظام.
- مرحبًا بك في اختبارات أسئلة المقابلة لمساعدتك في الاستعداد للاختبار التدريبي على أسئلة مقابلة Docker.
- يمكنك إعادة إجراء الاختبارات عدة مرات كما تريد
- هذا بنك أسئلة أصلي ضخم
- يمكنك الحصول على الدعم من المدرسين إذا كانت لديك أسئلة
- يحتوي كل سؤال على تفاصيل الشرح
- متوافق مع الجوال مع تطبيق Udemy
ما هي المتطلبات الأساسية لدخول الدورة والتسجيل فيها على موقعنا؟ رحلة التعلم:
(احصل على الدورة للدخول إلى الموقع والتسجيل)
يجب أن يكون لديك بريد إلكتروني (حساب بريد) تتذكره لنفسك وأيضًا يجب أن تتذكر كلمة مرور البريد الإلكتروني الذي ستسجل به ، وإذا لم يكن لديك حساب بريد إلكتروني ، فمن الأفضل إنشاء حساب (Gmail)
0 تعليقات
تسجيل دخول
دورات مشابهة