دستورات مهم Docker برای توسعه دهندگان نرم افزار

آفلاین
user-avatar
عرفان حشمتی
19 اسفند 1399, خواندن در 10 دقیقه

با توجه به استفاده گسترده از داکر، ما این مقاله را ایجاد کردهایم که شامل دستورات پرکاربرد Docker برای تولید و کارآیی بیشتر کار شما توسعه دهندگان است.

بدون شک استفاده از Docker این روزها بسیار داغ شده است.  وقتی S. Hykes آن را در سال 2013 راه اندازی کرد، طولی نکشید که Docker تمام توجهات را از سراسر جهان به خود جلب کرد.

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

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

بنابراین بیایید ابتدا اصول داکر را درک کنیم.

موارد مختلفی که می‌توانید از Docker استفاده کنید

شما می‌توانید از Docker برای موارد زیر استفاده کنید:

  • توزیع سیستم‌عامل برنامه خود با یک تیم به عنوان یک سیستم کنترل نسخه.
  • در مراحل مختلف توسعه مانند پیاده سازی، تست و تضمین کیفیت (QA).
  • در حالی که کد خود را به صورت محلی اجرا می‌کنید تا محیط سرور را شبیه سازی کنید.

پیکربندی Docker به صورت محلی

  • ابتدا باید داکر و جعبه ابزار آن را بارگیری کنید.
  • پس از بارگیری، اکنون باید بررسی کنید که AMD-V ، Virtualization Techs یا KVM در BIOS شما فعال باشد.
  • در آخر هم، پس از نصب بسته الحاقی در Oracle VirtualBox، به سادگی اجرای تنظیمات انجام می‌شود.

نحوه استفاده از Docker

دقیقا مانند اسنپ شات‌های ماشین‌های مجازی، داکر دارای تصاویر است. این یک فایل دارای چندین لایه است که برای اجرای کد در Docker استفاده می‌شود و می‌تواند به همان صورت که هست یا به صورت سفارشی مورد استفاده قرار گیرد. برای ایجاد یک کانتینر Docker، می‌توانید از درایور اجرای پیش فرض یعنی libcontainer استفاده کنید. علاوه بر این، می‌توانید از Docker Hub برای جستجوی همه تصاویر داکر بهره بگیرید.

  • "$ docker search <image>" – می‌توانید از آن برای جستجوی هر تصویری در Docker Hub استفاده کنید.
  • "$ docker images" – می‌توانید از آن برای بررسی کل تصاویر موجود در سیستم خود استفاده کنید.
  • "$ docker run hello world" – می‌توانید از آن برای بارگیری تصویر "hello world" برای ایجاد کانتینر داکر استفاده کنید.

بیشتر بخوانید: چگونه از تصاویر Docker استفاده کنیم؟

در صورتی که نمی‌دانید داکر چیست یا به دنبال یادگیری آن هستید، می‌توانید آموزش آن را در وب سایت راکت فرابگیرید.

11 مورد از مهمترین دستورات Docker که می‌توانید از آنها استفاده کنید

از زمان تأسیس، داکر با ارائه خدمات مختلف بر حسب نیازهای مجازی سازی فوق‌العاده رشد کرده است. به همین دلیل می‌توانید دستورات بی شماری برای Docker CLI پیدا کنید.

1. ایجاد یک کانتینر همراه با تصاویر از Docker Hub

$ docker create -it ubuntu:xenial bash

Docker Hub در واقع یک مخزن رسمی برای تصاویر داکر است. این شامل بسیاری از تصاویر از پیش ساخته شده است که توسط شرکت‌ها و توسعه دهندگان ایجاد شده. می‌توانید از دستور بالا استفاده کنید که به شما کمک می‌کند تصویر را برای Ubuntu Xenial از Docker Hub بکشید. با استفاده از این تصویر کانتینری ایجاد می‌شود.

2. لیست کانتینرها در Docker

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

$ docker ps

احتمال زیادی وجود دارد که دستور "ps" هیچ کانتینر در حال اجرا را لیست نکند. این ممکن است به این دلیل باشد که کانتینر Docker خود را شروع نکرده‌اید. اما نگران نباشید، شما می‌توانید از پسوند "a-" استفاده کنید که به Docker اطلاع می‌دهد تا تمام کانتینرها را لیست کند.

$ docker ps -a

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

3. شروع کانتینر

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

$ docker start CONTAINER_ID

در این دستور، "CONTAINER ID" شناسه کانتینر شما خواهد بود. هنگام اجرای دستور "ps -a" می‌توانید این شناسه را دریافت کنید.

بیشتر بخوانید: نحوه ایجاد و راه اندازی کانتینرهای Docker

4. اتصال کانتینر

تا اینجا کانتینر خود را شروع کرده‌اید اما برای استفاده از آن باید به کانتینر خود متصل شوید. برای انجام این کار، باید از دستور "attach" استفاده کنید.

$ docker attach CONTAINER_ID

این امر منجر به تغییر در درخواست شما میشود و اکنون شما در یک محفظه مستقر در اوبونتو Xenial هستید. در اینجا هر کاری که بکنید در داخل کانتینر باقی می‌ماند.

5. توقف کانتینر

درست مانند راه اندازی کانتینر، خاتمه دادن به آن نیز به همین سادگی است. بدون هیچ مشکلی می‌توانید با دستور "stop"، به یک کانتینر فعال خاتمه دهید. این برای مبتدیان یکی از مفیدترین دستورات است، زیرا به شما امکان می‌دهد به راحتی از هر کانتینر در حال اجرا خارج شوید.

$ docker stop CONTAINER_ID

با این حال، مشکل در اینجا این است که شما باید این دستور را از ترمینال دیگری اجرا کنید. زیرا ترمینال اصلی در حال حاضر کانتینر را اجرا می‌کند و حاوی Docker نیست. هنوز هم اگر تشخیص این مسئله دشوار است، می‌توانید با فشار دادن "Ctrl + D" یا فقط تایپ کردن "exit" در داخل کانتینر، از آن خارج شوید.

6. حذف کانتینر

یکی از مهمترین دلایل افزایش قابل توجه محبوبیت کانتینر، توانایی آن است که به شما کمک می‌کند تا هر کانتینر را بدون تأثیر بر سیستم میزبان حذف کنید. برای این کار می‌توانید از دستور زیر استفاده کنید.

$ docker rm CONTAINER_ID

این دستور فورا کانتینر شما را حذف می‌کند. اما با استفاده از آن، تمام پیکربندی‌ها و فایل‌های شما نیز حذف می‌شوند. بنابراین اگر در آینده به آنها احتیاج دارید، بهتر است قبل از پاک کردن کانتینر، آنها را جابجا کنید.

7. از بین بردن کانتینر

مطمئنم بعد از خواندن این عنوان، اولین چیزی که به ذهن شما خطور کرد این بود: "توقف یا خاتمه دادن به کانتینر با از بین بردن آن چه تفاوتی دارد"، درست است؟ خوب در داکر تفاوت بسیار ظریفی بین این دو وجود دارد. هنگامی که شما به کانتینر خاتمه می‌دهید، مرحله اول فرآیند درون کانتینر را متوقف می‌کند و سپس خود کانتینر.

در حالی که با دستور "kill" کل فرایند کانتینر را در سیستم میزبان از بین می‌برید. این ممکن است منجر به انحراف در فرآیندهای خاص کانتینر و یا باعث تغییر شکل نامطلوب شود. بنابراین اگر از دستور زیر استفاده می‌کنید، در مورد از بین بردن کانتینر بسیار محتاط باشید.

$ docker kill CONTAINER_ID

بیشتر بخوانید: چگونه کانتینرهای Docker را متوقف کنیم، از بین ببریم و آنها را تمیز کنیم؟

8. جدا کردن کانتینر

این دستور در شرایط خاصی که قبلا به هر کانتینری متصل شده‌اید برای شما مفید خواهد بود، اما به هر دلیلی می‌خواهید کانتینر را در حال اجرا رها کرده و از سشن‌های ترمینال استفاده کنید. از آنجا که دستورات Docker برای متوقف کردن یا از بین بردن یک کانتینر باعث خاتمه دادن به آنها می‌شود، بنابراین شما نمی‌توانید از آنها استفاده کنید.

Ctrl+P Ctrl+Q

در عوض هنگامی که داخل یک کانتینر در حال کار هستید، می‌توانید ترکیبی از کلیدهای فوق را نگه دارید که در جدا شدن از آن کانتینر به شما کمک خواهد کرد. به عنوان مثال می‌توانید دکمه Ctrl را پایین نگه داشته و مرتبا P & Q را یکی پس از دیگری فشار دهید.

9. چگونه می‌توان محتوا را از کانتینرها در سیستم فایل و بالعکس کپی کرد؟

ممکن است نیاز به کپی کردن فایل‌های پیکربندی از کانتینر در سیستم یا کانتینرهای دیگر باشد. برای اجرای این عمل می‌توانید از دستور "cp" استفاده کنید و محتوای آن را به صورت بازگشتی کپی می‌کند.

$ docker cp CONTAINER_ID:/test_file test_file

دستور بالا به کپی کردن test_file از کانتینری با CONTAINER_ID در سیستم میزبان کمک می‌کند. می‌توانید از دستور زیر برای کپی کردن فایل از سیستم میزبان به یک کانتینر استفاده کنید.

$ docker cp test_file CONTAINER_ID:/test_file

10. لیست کردن تمام تصاویر Docker

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

$ docker images

اجرای این دستور داکر به شما کمک می‌کند تا تمام تصاویر برتر Docker را به همراه مخزن، تگ‌ها و اندازه آنها بررسی کنید. اگر می‌خواهید IMAGE_ID را واکشی کنید، می‌توانید از پسوند q- استفاده کنید.

11. حذف تصاویر Docker

زمانی پیش می‌آید که شما ممکن است به تصویر یا تصاویر خاصی نیاز نداشته باشید. در چنین شرایطی می‌توانید یک یا چند تصویر داکر را با دستور زیر حذف کنید.

$ docker rmi <IMAGE_ID>

اگر هر تصویر خاصی با چندین مخزن تگ شود، باید آن را با دستور زیر حذف کنید.

$ docker rmi REPOSITORY:TAG

و دوباره هنگام اجرای دستور، می‌توانید اطلاعات مورد نیاز را پیدا کنید.

جمع بندی

بدون شک Docker به بخشی جدایی‌ناپذیر از توسعه نرم افزار مدرن تبدیل شده است. داکر شامل دستورات بی‌شماری است که می‌توانید مستندات آن را بررسی کنید. با این حال در این مقاله سعی شده است اساسی‌ترین و مهمترین دستورات که می‌توانید بدون هیچ مشکلی برای پروژه آینده خود استفاده کنید، پوشش داده شود.

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

منبع

چه امتیازی به این مقاله می دید؟
خیلی بد
بد
متوسط
خوب
عالی

دیدگاه‌ها و پرسش‌ها

برای ارسال دیدگاه لازم است، ابتدا وارد سایت شوید.

در حال دریافت نظرات از سرور، لطفا منتظر بمانید

در حال دریافت نظرات از سرور، لطفا منتظر بمانید

آفلاین
user-avatar
عرفان حشمتی @heshmati74
مهندس معماری سیستم های کامپیوتری، طراح و توسعه دهنده وب سایت
دنبال کردن

گفتگو‌ برنامه نویسان

بخشی برای حل مشکلات برنامه‌نویسی و مباحث پیرامون آن وارد شو