Skip to content

Latest commit

 

History

History
31 lines (25 loc) · 2.42 KB

day-07.md

File metadata and controls

31 lines (25 loc) · 2.42 KB

30 Days of Docker - Day 7

هاذ النهار غادي نهضروا على Dockerfiles لي هوما files لي تايكون فيهم المراحل لي غادي نتبعوا باش غادي نبنيو image ديالنا منين غادي نعيطوا على docker build
خلال البناء build كانحتاجوا نكوبييو شي ملفاتfiles ديالنا لimage .. و باش نديرو هاذشي كاينين 2 طرق COPY و ADD .. و الفرق هو أن ADD ذكية شوية على COPY:
  • بالنسبة ل COPY تاتكوبيي لينا الملفات (مثلا الكون ديل آبليكاسيون) لي عطيناها من الحاسوب ديالنا Host، للimage لداخل .. و فقط ماتازيد والو من راسها.
    المثال الجاي غادي يكوبيي devC من الحاسوب ديالنا ل/app لداخل في image
COPY ./devC /app 
  • أما ADD فهي شوية ذكية، بحيث أنها تاتقدر تعرف النوع ديال source و تتعامل معاه على حساب .. ADD تاتقدر تكوبيي ملفات عادي بحال COPY زائد URLs أو Archive ليتدير ليهم extract أوتوماتيكيا.
# the archive will be extracted into /app
COPY devC.tar.gz /app  
# download the files into /app
ADD devcrabat.com/code.tar /app

ملاحظات:
  • ممكن تبان ليك ADD أحسن في جميع الحالات و لكن بالعكس منين تبغي تكوبي الملفات ديالك ديما استعمل COPY الا ايلا كنتي محتاج ADD بالصح. السبب هو أن COPY is explicit يعني تاتكون عارف شنو غاجي يوقع مسبقا، في حين ADD تقدر خاصك تحضي راسك لاتمشي تدير شي حاجة بلا ماترد ليها البال، مثلا نتى محتاج تكوبي tar هو النيت، و لكن ADD تExtractih
  • غادي نبدل التوقيت ديال البوستس، ل بوسط كل يومين باش تبقى لي الفرصة نحط حوايج آخرين.
  • هاذ اليامات كانوجد واحد البروجي صغير، كنت بديتو شحال هاذي و من بعد كّيكّس بلابلا لي فاتت، قررت نرجع نكملو.