آموزش داکر مقدماتی

به طور خلاصه، داکر یک سرویس مدیریت کانتینر (Container) است. Docker در هر مکانی توسعه، ارسال و اجرا می‌شود. ایده کامل Docker این است که توسعه دهندگان به‌راحتی برنامه‌های کاربردی را توسعه دهند، آن‌ها را ...

پرطرفدار
گواهی‌نامه
4.4 (98 امتیاز)
3,624 دانشجو
مقدماتی
محتوای دوره
پیش‌نیاز‌ها
درباره دوره
نظرات کاربران
درباره استاد

محتوای دوره

11 فصل 53 جلسه 9 ساعت ویدیو
فصل اول: معرفی و پیش زمینه
فصل دوم: ایجاد آزمایشگاه لینوکس و Docker
فصل سوم: معرفی و بررسی Container‌ها در Docker
فصل چهارم: معرفی و بررسی Image‌ها در Docker و ساخت Image‌ها
فصل پنجم: بررسی مبحث Networking و DNS در Docker
فصل ششم: ذخیره‌سازی و مدیریت داده‌ها در Docker
فصل هفتم: معرفی و بررسی Docker Compose (ابزاری برای اجرای چند Container)
فصل هشتم: معرفی Docker Swarm و ورود به دنیای Cloud
فصل نهم: مثال‌های کاربردی
فصل دهم: مقدمه‌ای از Kubernetes
پروژه پایانی

پیش‌نیاز‌ها

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

درباره دوره

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

عرضه اولیه Docker در مارس 2013 بود و از آن زمان به کلیدواژه توسعه مدرن جهان، به‌ویژه در مواجهه با پروژه‌های مبتنی بر Agile تبدیل شده است.

در آموزش داکر مبانی اولیه Containerization بیان می‌شود و مباحث ارائه شده، به شما کمک می‌کند تا به درک کاملی از این مفهوم دست پیدا کنید. سپس با مفاهیم docker آشنا می‌شوید و یاد می‌گیرید که چطور از docker برای بهبود عملکرد سیستم و مدیریت نرم‌افزارها استفاده کنید. Docker، فرایند مجازی‌سازی و عملکرد بسیار بهتری ازVirtual Machine‌ها دارد و جزء دسته میکرو سرویس‌ها محسوب می‌شود. با استفاده از Docker می‌توان نرم‌افزار را بدون وابستگی به سیستم‌عامل اجرا کرد. هم‌چنین، با استفاده از قابلیت swarm، می‌توان علاوه بر ایجاد پایداری سیستم، میزان load سرورها را نیز مدیریت کرد. شاید بتوان به صورت خلاصه گفت، با استفاده ازdocker:

  • نرم‌افزار رو بساز
  • انتقال بده و اجرا کن!

 

هدف از آموزش داکر 

  • آشنایی با مفاهیم میکروسرویس‌ها و containerization
  • انتقال و تبدیل نرم‌افزارها به میکروسرویس‌ها
  • ایجاد high availability برای سرویس‌ها
  • ایجاد نرم‌افزارهای light weight برای بهینه‌سازی مصرف منابع سیستمی
  • پیش‌زمینه‌ای برای آشنایی و کار با Kubernetes

 

دوره آموزش Docker مناسب چه کسانی است؟ 

Docker ابزاری بسیار مناسبی برای کلیه برنامه‌نویسان و توسعه‌دهندگان است چرا که این امکان را می‌دهد که یک برنامه توسعه‌یافته را جدای از پلتفرم، در هر محیطی اجرا کنند. کانتینر این امکان را به برنامه‌نویسان می‌دهد تا یک برنامه را با تمام ماژول‌ها و وابستگی‌ها ایزوله سازی کرده و در سیستم‌عامل‌های مختلف بدون هیچ مشکلی اجرا کند. به‌عنوان یک مثال بارز یک توسعه‌دهنده PHP را در نظر بگیرید. او احتمالاً باید یک وب سرور را بر روی سیستم خود نصب کند همچنین نیاز به یک پایگاه داده MySQL دارد و اگر پروژه گسترش پیدا کند ممکن است نیاز به نصب چند ماژول اضافی برای PHP و تنظیمات مختلف داشته باشید.

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

 

مهارت‌هایی که بعد از فراگیری دوره  آموزش داکر مقدماتی خواهید داشت؟

  • آشنایی با ویژگی‌های داکر
  • آشنایی با مفاهیم میکروسرویس‌ها و مباحث containerization
  • استفاده از docker و میکروسرویس‌ها برای پیاده‌سازی نرم‌افزار
  • استفاده از Dockerfile (داکر فایل) و docker-compose برای ایجاد نرم‌افزارها در محیط UAT
  • پیاده‌سازی سناریوهای docker swarm و High Availability
  • اجرای نرم‌افزارهای مستقل از سیستم‌عامل بر روی محیط‌های production

 

منابع، نرم‌افزارها، آزمون، استاندارد یا الزامات لازم

پیشنهاد می‌شود جهت یادگیری بهتر و موثرتر دوره‌ی آموزش داکر حتما پیش از شروع نرم‌افزار داکر را را از وب‌سایت docs.docker.com دانلود نمایید و سپس اقدامات لازم جهت نصب داکر را با توجه به آموزش ارائه شده در فصل اول دوره انجام دهید.

 

آموزش‌های پیش‌نیاز و یا مکمل‌های دوره آموزش Docker

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

 

توضیح مختصری در مورد شیوه آموزش این دوره توسط استاد

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

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

سرفصل‌های برجسته دوره آموزش داکر

 

فصل اول: معرفی و پیش‌زمینه

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

ویژگی‌های مهم داکر عبارت‌اند از: 

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

 

فصل دوم: ایجاد آزمایشگاه لینوکس و Docker

DockerHub (داکرهاب) یک سرویس رجیستری در cloud است که به شما امکان می‌دهد تصاویر Docker را که توسط جوامع دیگر ساخته شده‌اند بارگیری کنید. همچنین می‌توانید image ساخته شده توسط Docker خود را در مرکز Docker بارگذاری کنید. در این فصل، نحوه بارگیری و استفاده از image Jenkins Docker از هاب داکر را مشاهده خواهیم کرد.

 

فصل سوم: معرفی و بررسی Container‌ها در Docker

کانتینرها نمونه‌هایی از image Docker‌ها هستند که می‌توانند با استفاده از دستور Docker run اجرا شوند. هدف اصلی داکر اجرای کانتینرها است.

 

اجرای یک کانتینر

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

 

فصل چهارم: معرفی و بررسی Image‌ها در Docker و ساخت Image‌ها

در داکر، همه چیز بر اساس image است. image ترکیبی از یک سیستم فایل و پارامترها است. 

 

فصل پنجم: بررسی مبحث Networking و DNS در Docker

Docker از جنبه‌های شبکه مراقبت می‌کند تا کانتینرها بتوانند با کانتینرهای دیگر و همچنین با Docker Host ارتباط برقرار کنند. اگر ifconfig را روی Docker Host (داکر هاست) انجام دهید، آداپتورDocker Ethernet را مشاهده خواهید کرد. این آداپتور هنگام نصب Docker بر روی Docker Host ایجاد می‌شود.

 

فصل ششم: ذخیره‌سازی و مدیریت داده‌ها در Docker

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

تکنولوژی درایور ذخیره‌سازی
OverlayFS overlay or overlay2
AUFS aufs
Btrfs brtfs
Device Manager devicemanager
VFS vfs
ZFS zfs

 

فصل هفتم: معرفی و بررسی Docker Compose ابزاری برای اجرای چند Container

Docker Compose برای اجرای چندین کانتینر به‌عنوان یک سرویس واحد استفاده می‌شود. به‌عنوان‌مثال، فرض کنید شما یک برنامه کاربردی داشته باشید که به NGNIX و MySQL نیاز داشته باشد، می‌توانید یک پرونده ایجاد کنید که هر دو محفظه را به‌عنوان یک سرویس بدون نیاز به شروع جداگانه شروع کند.


در این فصل، نحوه کار با Docker Compose را خواهیم دید. سپس، همچنین چگونگی دریافت یک سرویس ساده با MySQL و NGNIX را که با استفاده از Docker Compose در حال اجرا است، بررسی خواهیم کرد.


فصل هشتم: معرفی Docker Swarm و ورود به دنیای Cloud

Docker Cloud سرویسی است که توسط Docker ارائه می‌شود و در آن می‌توانید عملیات زیر را انجام دهید:

Nodes: می‌توانید Docker Cloud را به ارائه‌دهندگان ابر موجود خود مانند Azure و AWS متصل کنید تا کانتینرها را در این محیط‌ها بچرخانید.

 Cloud Repository:Cloud  مکانی را فراهم می‌کند که بتوانید مخازن خود را در آن ذخیره کنید.
Continuous Integration: با Github ارتباط برقرار کنید و یک خط لوله ادغام مداوم ایجاد کنید.
 Application Deployment: استقرار و مقیاس‌بندی زیرساخت‌ها و کانتینرها.
Continuous Deployment: می‌تواند استقرارها را به‌صورت خودکار انجام دهد.

 

فصل نهم: مثال‌های کاربردی 

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

 

فصل دهم: مقدمه‌ای از Kubernetes

Kubernetes یک چارچوب تخصصی برای Docker Container‌ها است که با در اختیار قراردادن Containerها اعمال خاصی را می‌تواند انجام دهد. به‌عنوان‌مثال، شما می‌توانید دو سرویس داشته باشید - یک سرویس شامل nginx و mongoDB و یک سرویس دیگر حاوی nginx و redis. هر سرویس می‌تواند دارای یک IP یا نقطه سرویس باشد که توسط برنامه‌های دیگر قابل اتصال باشد. سپس Kubernetes برای مدیریت این سرویس‌ها استفاده می‌شود.

اطلاعات بیشتر

امتیاز و نظرات کاربران

4.4

از مجموع 98 امتیاز

30 نظر

8 روز پیش

عالی

علی رضائی

علی رضائی

2 ماه پیش

کاش میشد لایو یک جلسه با استاد صحبت کنیم و سوالاتمون رو بپرسیم! دوره خیلی خوبی هست فقط باید اپدیت داشته باشه چون مثلا من الان دارم میرم یکسری چیزها تو داکر تغییر کرده که الان خیلی به مشکل خوردم ولی خب چیزای جدید هم یاد گرفتم!

حمید تهمتن مقدم

حمید تهمتن مقدم

3 ماه پیش

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

زینب معروفی

زینب معروفی

5 ماه پیش

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

دانشجوی دوره

6 ماه پیش

دوره خوبی هست ، استاد به تمام مطالب مسلط هستند و عالی توضیح میدهند ولی بزرگترین عیب دوره پشتیبانی ضعیفچه در بخش ثبت چه در بخش تالار گفتگو

ایلیا عسکری

ایلیا عسکری

6 ماه پیش

دوره به شدت برای من مفید بود البته لازم به ذکره که من اشناییبا دنیای لینوکس و برنامه نویسی دارم به دوستانی که نیاز به داکر دارن توصیه میکنم. لطفا پیگیری شود فایل های یمل فصل7 برای دانلود قرار بگیرد فوری با تشکر

علیرضا صالحی

علیرضا صالحی

نظرات بیشتر

گواهی‌نامه

آموزش داکر مقدماتی

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

قابل اشتراک‌گذاری در

linkdin

دوره‌های پیشنهادی

درباره استاد

صادق کریمی دستگردی
صادق کریمی دستگردی
1 دوره
3,624 دانشجو

صادق کریمی دانش‌آموخته کارشناسی ارشد رشته مهندسی سیستم‌های مخابرات از دانشگاه امیرکبیر است. 
وی اکنون در حوزه مخابرات سلولی فعالیت دارد و در حال حاضر در شرکت ایرانسل به عنوان مهندس آنالیز داده‌ها در حوزه امنیت شبکه فعالیت دارد و علاقه‌مند به استفاده از هوش مصنوعی و یادگیری ماشین در سیستم‌های مخابراتی است. هم‌چنین، ایشان در زمینه پیاده‌سازی میکروسرویس‌ها و containerها با تمرکز بر نسل 5G شبکه‌های سلولی و Telco cloud فعالیت دارد. 

اطلاعات بیشتر

سوالات پرتکرار

آیا در صورت خرید دوره، گواهی نامه آن به من تعلق می گیرد؟

خیر؛ شما با خرید دوره می توانید در آن دوره شرکت کنید و به محتوای آن دسترسی خواهید داشت. در صورتی که در زمان تعیین شده دوره را با نمره قبولی بگذرانید، گواهی نامه دوره به نام شما صادر خواهد شد.

حداقل و حداکثر زمانی که می توانم یک دوره را بگذرانم چقدر است؟

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

در صورت قبولی در دوره، آیا امکان دریافت نسخه فیزیکی گواهی نامه دوره را دارم؟

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

پس از سپری شدن زمان دوره، به محتوای دوره دسترسی خواهم داشت؟

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