021-71053903 [email protected] پشتیبانی از شنبه تا چهارشنبه ساعت 9 الی 16

بهترین روش ها برای نوشتن داکرفایل(build context)

هنگامی که شما دستور docker build را وارد میکنید دایرکتوری که در حال حاضر کارها در آن انجام میشود را  build context (محتوای ساختار) می نامیم.به طور پیش فرض ، در نظر گرفته شده است که Dockerfile در اینجا قرار دارد ، اما می توانید مکان دیگری را با flag فایل یا (f-) مشخص کنید.

 صرف نظر از جایی که Dockerfile درآنجا واقع شده ، کلیه مطالب بازگشتی پرونده ها و دایرکتوری های موجود در دایرکتوری فعلی به عنوان  build context (محتوای ساختار) به Docker daemon ارسال می شوند..

مثال های برای build context:

یک دایرکتوری برای build context بسازید و سپس با دستور cd به داخل دایرکتوری بروید.

داخل یک فایل متنی hello را تایپ کرده و سپس خود فایل را نیز به اسم hello ذخیره کنید و یک داکرفایل بسازید که دستور cat را بر روی فایل hello انجام دهد.

ایمیج را از داخل محتوای ساختار (“.” همانطور که میندانید منظور از نقطه یا دات اشاره به دایرکتوری فعلی است) بسازید.

build context - 1
ساخت ایمیج از داخل محتوای ساختار

حال داکرفایل و  hello را به دایرکتوری های جداگانه منتقل کنید و نسخه دوم image را (بدون استفاده از حافظه پنهان یا cache آخرین build) ایجاد کنید. با flag فایل (-f) به داکرفایل اشاره کنید و دایرکتوری محتوای ساختار را مشخص کنید.

build context - 2
ساختن ایمیج با flag فایل و بدون استفاده از حافظه پنهان

پرونده های که برای ساخت ایمیج نیاز نیستند باعث ایجاد یک build context  بزرگتر و حجم بیشتر ایمیج میشوند. این کار میتواند باعث شود که زمان build شدن ایمیج همچنین زمان بارگذاری و بارگیری آن بعلاوه زمان اجرای کانتینر را افزایش دهد.

برای اینکه متوجه شوید حجم محتوای ساختار خود چقدر شده است هنگام build کردن داکرفایل دنبال پیامی مانند پیام زیر باشید.

Sending build context to Docker daemon 187.8MB

مقالات مرتبط:
بهترین روش ها برای نوشتن داکرفایل
بهترین روش های توسعه برنامه با داکر 2
بهترین روش های توسعه برنامه با داکر

محمد حجازی

31 مطلب منتشر شده

محمد حجازی هستم برنامه نویس و علاقمند به تکنولوژی و کامپیوتر. در تلاشیم که همه با هم یه قدم در راستای گسترش علم برداریم.

درباره این مطلب نظر دهید !

مطالب پرمخاطب پایتونی ها

IPSec چیست ؟!!

IPSec چیست ؟!!

8
دقیـقه مطالعه
ادامه ...

محصولات فروش پایتونی ها

%60
تخفیف

آموزش فیگما (Figma)

30,000 تومان
3
%69
تخفیف

آموزش برنامه نویسی پایتون

35,000 تومان
2