التمرين - إنشاء صور حاوية مع مهام تسجيل الحاويات Azure

مكتمل

افترض أن شركتك تستخدم صور الحاوية لإدارة أحمال العمل لحسابها. يمكنك استخدام الأدوات Docker المحلية لبناء الصور الحاويات الخاصة بك.

يمكنك الآن استخدام مهام تسجيل حاوية Azure لإنشاء صور الحاوية هذه. مهام تسجيل الحاوية يسمح أيضًا لـ DevOps بعملية التكامل مع الإنشاء الآلي على التعليمات البرمجية للمصدر الالتزام.

دعونا نكمل إنشاء صورة حاوية باستخدام مهام سجل الحاويات Azure.

إنشاء صورة حاوية مع مهام تسجيل حاوية Azure

يوفر Dockerfile قياسي إرشادات البناء. مهام تسجيل حاوية Azure تمكنك من إعادة استخدام أي Dockerfile حاليًا في البيئة الخاصة بك، بما في ذلك البناءات متعددة مراحل.

سنستخدم Dockerfile جديدًا على سبيل المثال.

هام

تحتاج إلى اشتراك Azure الخاص بك لتشغيل هذا التمرين، وقد تتكبد رسوماً.  إذا لم يكن لديك اشتراك Azure بالفعل، فأنشئ حساباً مجانياً قبل أن تبدأ.

الخطوة الأولى هي إنشاء ملف جديد باسم ⁧Dockerfile⁩. يمكنك استخدام أي محرر نصوص لتحرير الملف. سنستخدم محرر Cloud Shell لهذا المثال.

  1. قم بتشغيل الأمر التالي في Cloud Shell لفتح المحرر.

    code
    
  2. نسخ المحتويات التالية إلى المحرر.

    FROM    node:9-alpine
    ADD     https://raw.githubusercontent.com/Azure-Samples/acr-build-helloworld-node/master/package.json /
    ADD     https://raw.githubusercontent.com/Azure-Samples/acr-build-helloworld-node/master/server.js /
    RUN     npm install
    EXPOSE  80
    CMD     ["node", "server.js"]
    
  3. اضغط Ctrl+S (Cmd+S لنظام Mac) لحفظ التغييرات الخاص بك. اسم الملف ⁧Dockerfile⁩ عند المطالبة.

    يضيف هذا التكوين تطبيق Node.js إلى ⁧node:9-alpine⁩ الصورة. بعد ذلك، فإنه بتكوين الحاوية لخدمة التطبيق على المنفذ 80 عبر تعليمات⁧⁩EXPOSE.⁧

  4. شغل الأمر CLI Azure التالية لإنشاء صورة الحاوية من Dockerfile. ⁧⁩$ACR_NAME⁧⁩ هو المتغير الذي قمت بتعريفه في الوحدة السابقة للاحتفاظ باسم تسجيل الحاوية.

    az acr build --registry $ACR_NAME --image helloacrtasks:v1 .
    

    ملاحظة

    لا تنسَ النقطة ⁧.⁩ في نهاية الأمر السابق. فهي تمثل دليل المصدر الذي يحتوي على ملف docker، والذي هو في حالتنا الدليل الحالي. حيث إننا لم نحدد اسم لملف مع المعلمة ⁧--file، فإن الأمر يبحث عن ملف يسمى ⁧⁩Dockerfile⁧⁩ في دليلنا الحالي.

تحقق من الصورة

  1. شغل الأمر التالي في Cloud Shell للتحقق من أن الصورة قد تم إنشاؤها وتخزينها في السجل.

    az acr repository list --name $ACR_NAME --output table
    
  2. يجب أن يبدو المخرج من هذا الأمر مشابهًا للمثال التالي.

    Result
    -------------
    helloacrtasks
    

helloacrtasks⁩الصورة جاهزة الآن للاستخدام.