Docker_-_Build__Ship__and_Run_Any_App__Anywhere

ایمیج whalesay که در قسمت قبلی نصب کردیم میتواند بهبود های بیشتری داشته باشد و از یک برنامه ساده خارج شود. اینکه فقط یک ایمیج داشته باشید و با دستور زیر به آن بگویید چه نمایش دهد آنقدرها هم کار راه انداز و مفید نیست.

 

در این قسمت یک ایمیج میسازیم تا خودش صحبت کند و برای اجرا به دستورات کمتری نیاز داشته باشد.

مرحله اول : نوشتن یک فایل Docker

در این مرحله از ویرایشگر متن محبوب خود کمک بگیرید تا یک متن کوتاه با آن بنویسیم؛ به این متن فایل Docker میگویند. فایل داکر در مورد نرم افزاری که در یک ایمیج bake می‌شود (به اصطلاح پخته میشود) توضیحات لازم را ارائه میدهد. همچنین میتواند توضیح دهد که نرم‌افزار از چه محیطی استفاده کند و یا مجاز به استفاده از چه دستوراتی است.

– ترمینال خود را باز کنید

– یک دایرکتوری جدید ایجاد کنید :

 

این دایرکتوری یک contex برای ما است. Contex جایی است که تمامی فایل‌های مورد نیاز ما در آن نگهداری میشوند.

– به دایرکتوری جدید بروید :

 

در حال حاضر دایرکتوری ما خالی است؛ یک فایل تکست در آن ایجاد میکنیم و اسم آن را dockerfile قرار میدهیم.

– فایل داکر خود را با ویرایشگری مانند نانو یا ویرایشگر دلخواه خود باز کنید و خطی همانند زیر به آن اضافه کنید :

 

دستور from به داکر میگوید که ایمیج شما از چه بیسی اجرا می‌شود و بر پایه چیست.

– حال برنامه fortune را به ایمیج خود اضافه میکنیم :

 

این برنامه به صورت کامند لاینی کار میکند و جمله‌های زیبایی را در محیط متنی برای ما چاپ خواهد کرد که میتوانیم آن‌ها را به whalesay بدهیم تا نمایش دهد.

– پس از آنکه ایمیج ما نرم افزاری را که نیاز داریم دارا شد باید ایمیج را طوری بسازیم که با اجرا شدنش نرم‌افزار ما نیز اجرا شود.

 

این خط به firtune میگوید تا از برنامه cowsay برای بیان جملات استفاده کند.

– کری که انجام دادید را بررسی کنید و فایلتان باید چیزی شبیه به این باشد :

 

container-docker-blue-whale

– فایل داکر خود را ذخیره کرده و ببندید. تا اینجا تمامی کارها و نرم افزارهایی را که نیاز داشتیم در فایل پیاده‌سازی کرده‌ایم و آماده ایم تا یک ایمیج جدید بسازیم.

مرحله دوم : ساخت ایمیج از طریق فایل Docker

حال ایمیج جدید خود را با دستور زیر build کنید و توجه داشته باشید که در آخر دستور . را به کار ببرید.

 

 

دستور چندید دقیقه زمان میبرد و در طی این مدت به شما گزارش کارهایی که انجام می‌شود داده خواهد شد. قبل از اینکه کاری با ایمیج ساخته شده انجام دهید بیاید اطلاعاتی در مورد ساخت فایل داکر کسب کنیم.

مرحله سوم : یادگیری پروسه build گرفتن

دستور docker build -t docker-whale . فایل داکر را در دایرکتوری فعلی گرفته و ایمیجی با نام docker-whale در ماشین شما ایجاد میکند. این دستور چند دقیقه‌ای طول میکشد و خروجی بسیار کاملی میدهد در این قسمت میخواهیم هر پیام را بررسی کنیم تا بفهمیم چه اتفاقاتی در حال وقوع است.

ابتدا داکر چک میکند تا بفهمد هرچیزی را که برای ساختن ایمیج نیاز دارد در دسترس داشته باشد.

 

داکر با ایمیج whalesay اجرا می‌شود و از آنجایی که این ایمیج به صورت محلی ذخیره شده است و داکر نیازی به دانلود نخواهد داشت.

 

سپس داکر به مرحله بعد رفته که آپدیت کردن پکیج منیجر apt است. این دستور خطوط زیادی را تولید میکند که نیازی نیست آن‌ها را مطالعه کنیم.

docker

سپس داکر نرم‌افزار fortune را نصب میکند.

 

و در آخر داکر کار خود را تمام کرده و خروجی را اطلاع رسانی میکند.

 

 

مرحله چهارم : اجرای docker-whale جدید

در این مرحله میخواهیم مطمئن شویم که فایل در سیستم موجود شده است و در آخر ایمیج خود را اجرا میکنیم.

– اگر ایمیج در آنجا نباشد باید نشانگر موس خود را بر روی پیام ترمینال ببرید

– عبارت docker images را تایپ کنید و اینتر بزنید

اگر به یاد داشته باشید این دستور ایمیج های موجود در سیستم که مربوط به داکر می‌شود را نمایش میدهد.

 

 

– ایمیج جدید خو را با تایپ دستور docker run docker-whale اجرا کنید.

 

 

همانطور که میبینید وال خود را کمی باهوش‌تر کردیم تا در هربار اجرا شدنش پیام جدیدی را نمایش دهد. به یاد داشته باشید که داکر نیاز به دانلود چیزی نخواهد داشت چون ایمیج به صورت محلی و در سیستم شما ساخته شده است و دیگر نیاز به دانلود فایل اضافی برای اینکار نخواهید داشت.

در بخش بعدی ساخت اکانت در داکرهاب و همچنین اضافه کرن یک مخزن شخصی به آن را آموزش خواهیم داد.

2 دیدگاه ها

  1. محمد می‌گه:

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

    • علیرضا کفطوسیان می‌گه:

      سلام
      خود داکر رو باهاش صحبت کردن و گفته ممکنه تحریم هارو برداره ولی الان چندماهی هست که اینکارو نکرده.
      فعلا روش خوبی برای اینکه بتونسد تحریم داکر رو دور بزنید نیست مگر اینکه اونو رو یه سرورمجازی توی کشور دیگه اجرا بکنید!
      حالا اگه بتونید ایمیجی که روی سرورتون میگیرید رو دریافت کنید رو سیستم فک کنم مشکل رفع بشه.

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *