الدرس 8: مقدمة إلى Dockerfiles
في حين أن سحب الصور الرسمية أمر مريح، لتغليف تطبيقاتك الخاصة في حاويات، يجب عليك إنشاء صورة Docker مخصصة باستخدام Dockerfile.
ما هو Dockerfile؟
Dockerfile هو ملف نصي بسيط يحتوي على سلسلة من التعليمات (الأوامر) التي يستخدمها Docker لبناء صورة جديدة تلقائياً. يتم تنفيذ هذه التعليمات بالتتابع، مما ينشئ طبقة جديدة للقراءة فقط لكل خطوة.
إنشاء أول Dockerfile لك
قم بإنشاء مجلد جديد يسمى my-app وداخله، أنشئ ملفاً باسم Dockerfile (بدون امتداد).
سنقوم بإنشاء صورة بسيطة تعتمد على Ubuntu تقوم بتثبيت حزمة curl.
dockerfile
محتوى Dockerfile
1. ابدأ من صورة أساسية
FROM ubuntu:latest
2. تعيين القائم بالصيانة (اختياري، ولكنه ممارسة جيدة)
LABEL maintainer="yourname@example.com"
3. تنفيذ أوامر لتحديث الحزم وتثبيت curl
RUN apt-get update && apt-get install -y curl
4. تعريف الأمر الافتراضي للتشغيل عند بدء الحاوية
CMD ["curl", "--version"]
بناء الصورة
لبناء الصورة، انتقل إلى الدليل الذي يحتوي على Dockerfile في الطرفية الخاصة بك واستخدم الأمر docker build.
bash
الصيغة: docker build [OPTIONS] PATH | URL
docker build -t my-custom-curl-image:v1.0 .
تحليل:
docker build: الأمر لبدء عملية البناء.-t my-custom-curl-image:v1.0: العلامة (-t) التي نخصصها للصورة الناتجة. من الممارسات الجيدة تضمين علامة إصدار..: سياق البناء (المسار إلى الدليل الذي يحتوي على Dockerfile). النقطة تعني 'الدليل الحالي'.
سيقوم Docker بتنفيذ التعليمات سطراً بسطر، وعرض عملية التخزين المؤقت للطبقات.
تشغيل الصورة المخصصة
بعد بناء ناجح، قم بتشغيل صورتك الجديدة:
bash docker run --rm my-custom-curl-image:v1.0
النتيجة: ستبدأ الحاوية، وتشغل تعليمة CMD (curl --version)، وتطبع معلومات الإصدار، ثم تخرج (وتتم إزالتها بسبب --rm).