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

داکر چیست؟

داکر (docker) یک پلتفرم متن‌باز است که به توسعه‌دهندگان و تیم‌های فناوری اطلاعات این امکان را می‌دهد که برنامه‌ها و سرویس‌ها را در کانتینرها (Containers) اجرا و مدیریت کنند. کانتینرها محیط‌هایی کوچک و سبک هستند که به‌شکل مشترک از هسته سیستم عامل استفاده می‌کنند اما در یک محیط ایزوله و کاملن جدا از هم قرار دارند. هر کانتینر داکر شامل تمام منابع و وابستگی‌های نرم‌افزاری لازم برای اجرای یک اپلیکیشن است، بنابراین می‌توان آن را در هر محیطی به‌طور یکسان اجرا کرد، چه بر روی لپ‌تاپ توسعه‌دهنده و چه بر روی سرور ابری. 

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

تاریخچه docker چیست؟

داکر در سال ۲۰۱۳ توسط سولومون هیکس (Solomon Hykes) و تیمش در شرکت Dotcloud توسعه یافت. هدف اولیه این پروژه، ساده‌سازی فرآیند توسعه و استقرار برنامه‌ها بود. در ابتدا، داکر بر پایه کانتینر لینوکس (LXC) ساخته شده بود، اما به‌منظور ارتقا کارایی و افزایش انعطاف‌پذیری، تیم توسعه در سال ۲۰۱۴ به‌طور مستقل از LXC به Libcontainer روی آورد. با رشد روزافزون استفاده از سرویس داکر، این پلتفرم به‌سرعت به یک ابزار حیاتی در مدیریت و استقرار برنامه‌ها در محیط‌های ابری تبدیل شد.

آشنایی با مفاهیم اصلی در داکر

برای درک بهتر داکر، آشنایی با مفاهیم کلیدی آن ضروری است. در اینجا، به بررسی مفاهیم اصلی مانند داکر ایمیج (DockerImage)، داکر فایل (DockerFile) و کانتینر (Container) نقش هر یک در داکر پرداخته‌ایم:

کانتینر داکر چیست؟

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

داکر ایمیج (Docker Image) چیست؟

داکر ایمیج یک قالب ثابت و آماده است که شامل تمامی فایل‌ها، برنامه‌ها و تنظیمات لازم برای ایجاد یک کانتینر است. به عبارت دیگر، ایمیج‌ها مانند “الگو” برای ایجاد کانتینرها عمل می‌کنند. این ایمیج‌ها معمولن به‌شکل Read-Only هستند و پس از راه‌اندازی یک کانتینر، می‌توانند تغییراتی در داخل کانتینر ایجاد شوند.

داکر فایل (Dockerfile) چیست؟

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

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

داکر دیمون (Docker Daemon) چیست؟ 

موتور داکر شامل داکر دیمون، یک رابط API و داکر CLI است. داکر دیمون (Dockerd) به‌شکل مستمر به‌عنوان سرویس Dockerd اجرا ‌می‌شود و مسوول ساخت تصاویر داکر است. Dockerd برای مدیریت تصاویر و اجرای کانتینرها، Docker-Containerd APIs را فراخوانی ‌می‌کنند. موتور داکر یک برنامه‌ی کاربردی مبتنی بر کلاینت- سرور است که به ۳ بخش اصلی تفکیک می‌شود. 

  • سرور 
  • REST API 
  • کلاینت 

سرور یک دیمون به‌نام Dockerd (Docker Daemon) را اجرا می‌کند که چیزی به‌غیر از یک فرآیند نیست. داکر دیمون مسوول ایجاد و مدیریت ایمیج‌های داکر، کانتینرها، شبکه‌ها و ولوم‌ها در پلت‌فرم داکر است. 

REST API

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

Docker-Dontainerd (Containerd)

 Containerd یکی دیگر از سرویس‌های شبه سیستم است که مسوولیت دانلود تصاویر داکر و اجرای آن‌ها را به‌عنوان یک کانتینر برعهده دارد.  

Docker-Runc

Runc زمان اجرای کانتینری است که مسوولیت ایجاد فضاهای نام و Cgroup‌های مورد نیاز یک کانتینر را برعهده دارد. سپس دستورات کانتینر را داخل فضاهای نام اجرا ‌می‌کند. Runc طبق مشخصات OCI پیاده سازی ‌می‌شود. 

Docker Registry چیست؟

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

اگر مخزن شما عمو‌می ‌باشد، سایر کاربران داکر‌هاب ‌می‌توانند به همه‌ی Imageهای شما دسترسی داشته باشند. به همین دلیل شما ‌می‌توانید یک رجیستری خصوصی را در Docker Hub ایجاد کنید. 

معماری داکر چیست؟

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

  • Docker Engine (Dockerd) 
  • Docker-Containerd (Containerd) 
  • Docker-Runc (Runc) 

هنگام نصب داکر، همه‌ی این قسمت‌ها نیز نصب ‌می‌شوند و نیازی نیست هر کدام را جداگانه نصب کنید. 

نسخه‌های داکر

داکر در دو نسخه موجود است که در ادامه به آن‌ها اشاره می‌کنیم: 

  • Community Edition (CE) 
  • Enterprise Edition (EE) 

نسخه Community Edition (CE) برای توسعه‌دهندگان فردی و تیم‌های کوچک مناسب است. در مقایسه با نسخه‌ی Enterprise Edition (EE)، عملکرد محدودی را ارایه می‌دهد. از طرف دیگر، ورژن Enterprise برای تیم‌ها و محیط‌های بزرگ مناسب است. نسخه‌ی Enterprise خود به سه نسخه مختلف دیگر دسته بندی می‌شود: 

  • Basic Edition 
  • Standard Edition 
  • Advanced Edition 

آشنایی با نحوه عملکرد داکر و مدیریت کانتینرها

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

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

مزایا و معایب استفاده از داکر چیست؟

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

آشنایی با مزایای استفاده از داکر

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

1. سرعت بالا

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

2. سازگاری بیش‌تر

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

3. مقیاس‌پذیری بالا

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

4. قابلیت جابجایی آسان

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

معایب استفاده از داکر

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

1. پیچیدگی در مدیریت

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

2. امنیت داکر

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

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

مهم‌ترین کاربردهای داکر چیست؟

داکر به دلیل ویژگی‌های منحصر به فرد خود، در بسیاری از حوزه‌ها و مراحل توسعه نرم‌افزار کاربرد دارد. در این بخش به برخی از مهم‌ترین کاربردهای آن اشاره می‌کنیم:

1. توسعه نرم‌افزار

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

2. تست نرم‌افزار

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

3. استقرار نرم‌افزار

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

4. میکروسرویس‌ها

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

مقایسه داکر با ماشین‌های مجازی

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

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

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

چگونه امنیت داکر را افزایش دهیم؟

برای افزایش امنیت در استفاده از داکر و مدیریت کانتینرها، رعایت نکات زیر ضروری است:

  1. استفاده از کانتینرهای معتبر: برای جلوگیری از آسیب‌پذیری‌ها از داکر ایمیج‌های رسمی و معتبر استفاده کنید.
  2. بروزرسانی منظم دکر ایمیج‌: برای رفع آسیب‌پذیری‌های جدید، ایمیج‌های داکر را به‌طور مرتب بروزرسانی کنید.
  3. استفاده از Docker Content Trust: این قابلیت برای اطمینان از امضای ایمیج‌ها و معتبر بودن آن‌ها به کار می‌رود.
  4. ایزوله‌سازی صحیح کانتینرها: کانتینرها را به‌طور دقیق ایزوله کنید تا از دسترسی غیرمجاز به منابع سیستم جلوگیری شود.
  5. محدودیت منابع: منابع مصرفی هر کانتینر را محدود کنید تا از سو استفاده جلوگیری شود.
  6. مدیریت دسترسی‌ها: دسترسی‌ها و مجوزهای کانتینرها را به‌دقت مدیریت کرده و از احراز هویت چندعاملی استفاده کنید.
  7. اسکن آسیب‌پذیری‌ها: از ابزارهای اسکن آسیب‌پذیری مانند Clair یا Trivy برای شناسایی مشکلات امنیتی استفاده کنید.
  8. تنظیمات امنیتی شبکه: دسترسی به شبکه کانتینرها را محدود کرده و از firewall برای کنترل ارتباطات استفاده کنید.
  9. اجتناب از دسترسی ریشه (Root): کانتینرها را بدون دسترسی به سطح ریشه اجرا کنید تا امنیت سیستم حفظ شود.

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

معرفی ابزارها و اجزای اکوسیستم داکر

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

1. آشنایی با Docker Compose

Docker Compose ابزاری است که به شما این امکان را می‌دهد تا چندین کانتینر را با استفاده از یک فایل YAML تعریف و به‌طور هم‌زمان اجرا کنید. این ابزار برای مدیریت پروژه‌های پیچیده که نیاز به چندین سرویس (مانند پایگاه داده، سرور وب و غیره) دارند، بسیار مفید است. به‌طور خلاصه، Docker Compose ابزار مدیریت کانتینرهای چندگانه در یک محیط است.

2. آشنایی با Docker Swarm

Docker Swarm یک ابزار برای مدیریت خوشه‌های داکر (Docker Clusters) است. این ابزار به شما امکان می‌دهد تا کانتینرها را در چندین ماشین توزیع کنید و آن‌ها را به‌شکل هماهنگ مدیریت کنید. Docker Swarm به‌عنوان یک راه‌حل برای ارکستراسیون کانتینرها در داکر شناخته می‌شود.

3. آشنایی با Kubernetes

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

4. آشنایی با Docker Registry

Docker Registry جایی است که داکر ایمیج‌ها ذخیره می‌شوند. این می‌تواند یک سرویس عمومی مانند Docker Hub یا یک سرویس خصوصی باشد. با استفاده از Docker Registry، می‌توانید ایمیج‌های داکر را به‌راحتی منتشر و بارگیری کنید.

دستورات داکر

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

Docker create

اولین دستوری که با نگاه کردن به آن متوجه کاربرد داکر خواهیم شد دستور Create است. 

سینتکس این دستور به‌شکل زیر است: 

Docker Create [options] IMAGE [commands] [arguments]

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

$ Docker Create Fedora

در این مثال، دستور Create یک کانتینر جدید با استفاده از آخرین Image فدورا ایجاد می‌نماید. اگر کانتینر با موفقیت ایجاد شود، داکر یک شناسه‌ی کانتینر را برمی‌گرداند.

Docker ps

دستور بعدی Docker Ps است. این دستور به ما اجازه می‌دهد تا تمام کانتینرهایی را که در هاست داکر در حال اجرا هستند را ببینیم. 

$ Docker ps

این دستور فقط کانتینرهایی را نشان می‌دهد که در حال حاضر روی هاست داکر در حال اجرا هستند. 

اگر می‌خواهید تمام کانتینرهایی که روی هاست ایجاد شده‌اند را بدون توجه به وضعیت فعلی آن‌ها ببینید، باید گزینه‌ی a- را وارد کنید. این دستور همه‌ی کانتینترها را نمایش می‌دهد.

$ Docker ps –a

خروجی‌های دستور Docker Ps

CONTAINER ID: یک رشته‌ی منحصربه‌فرد متشکل از کاراکترهای الفبایی-عددی مرتبط با هر کانتینر است. 

IMAGE: نام تصویر داکر مورد استفاده برای ایجاد کانتینر است. 

COMMAND: یک دستور خاص برای برنامه‌ که باید هنگام راه‌اندازی کانتینر اجرا شود. 

CREATED: زمان سپری‌شده از زمان ایجاد کانتینر را نشان میدهد. 

STATUS: وضعیت فعلی کانتینر به‌همراه زمان سپری‌شده در وضعیت فعلی را نشان می‌دهد. 

PORTS: نگاشت پورتهای تعریف‌شده را برای هر کانتینر نشان می‌دهد. 

NAMES: به غیر از شناسه‌ی کانتینر، به هر کانتینر یک نام نیز اختصاص داده شده است. 

Docker Start

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

docker start [options] CONTAINER ID/NAME [CONTAINER ID/NAME…]

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

Docker Stop

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

docker stop [options] CONTAINER ID/NAME [CONTAINER ID/NAME…]

این دستور شبیه به دستور شروع داکر است.

Docker Restart

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

docker restart [options] CONTAINER ID/NAME [CONTAINER ID/NAME…]

Docker Run

این دستور ابتدا کانتینر را ایجاد و سپس آن را راه‌اندازی می‌کند. در واقع این دستور ترکیبی از Docker Create و Docker Start است. 

docker run [options] IMAGE [commands] [arguments]

Docker Rm

اگر بخواهیم یک کانتینر را حذف کنیم از دستور Docker rm استفاده می‌کنیم. 

docker rm [options] CONTAINER ID/NAME [CONTAINER ID/NAME...]

Docker Images

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

$ docker images


خروجی
های این دستور شامل موارد زیر هستند: 

REPOSITORY: نشان دهنده‌ی نام منحصربه‌فرد Docker Image است 

TAG: هر Image با یک برچسب که منحصربه‌ عکس است مرتبط است. 

IMAGE ID: یک رشته‌ی یکتا متشکل از کاراکترهای الفبایی عددی مرتبط با یک Image است. 

CREATED: مدت زمانی که تصویر ایجادشده را نمایش می‌دهد 

SIZE: اندازه‌ی تصویر را نشان میدهد.

نتیجه‌گیری

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