به طور خلاصه، داکر یک سرویس مدیریت کانتینر (Container) است. Docker در هر مکانی توسعه، ارسال و اجرا میشود. ایده کامل Docker این است که توسعه دهندگان بهراحتی برنامههای کاربردی را توسعه دهند، آنها را ...
آشنایی با لینوکس
آشنایی با زبانهای برنامهنویسی
به طور خلاصه، داکر یک سرویس مدیریت کانتینر (Container) است. Docker در هر مکانی توسعه، ارسال و اجرا میشود. ایده کامل Docker این است که توسعه دهندگان بهراحتی برنامههای کاربردی را توسعه دهند، آنها را به محفظههایی بفرستند که میتوانند در هر مکان مستقر شوند.
عرضه اولیه Docker در مارس 2013 بود و از آن زمان به کلیدواژه توسعه مدرن جهان، بهویژه در مواجهه با پروژههای مبتنی بر Agile تبدیل شده است.
در آموزش داکر مبانی اولیه Containerization بیان میشود و مباحث ارائه شده، به شما کمک میکند تا به درک کاملی از این مفهوم دست پیدا کنید. سپس با مفاهیم docker آشنا میشوید و یاد میگیرید که چطور از docker برای بهبود عملکرد سیستم و مدیریت نرمافزارها استفاده کنید. Docker، فرایند مجازیسازی و عملکرد بسیار بهتری ازVirtual Machineها دارد و جزء دسته میکرو سرویسها محسوب میشود. با استفاده از Docker میتوان نرمافزار را بدون وابستگی به سیستمعامل اجرا کرد. همچنین، با استفاده از قابلیت swarm، میتوان علاوه بر ایجاد پایداری سیستم، میزان load سرورها را نیز مدیریت کرد. شاید بتوان به صورت خلاصه گفت، با استفاده ازdocker:
Docker ابزاری بسیار مناسبی برای کلیه برنامهنویسان و توسعهدهندگان است چرا که این امکان را میدهد که یک برنامه توسعهیافته را جدای از پلتفرم، در هر محیطی اجرا کنند. کانتینر این امکان را به برنامهنویسان میدهد تا یک برنامه را با تمام ماژولها و وابستگیها ایزوله سازی کرده و در سیستمعاملهای مختلف بدون هیچ مشکلی اجرا کند. بهعنوان یک مثال بارز یک توسعهدهنده PHP را در نظر بگیرید. او احتمالاً باید یک وب سرور را بر روی سیستم خود نصب کند همچنین نیاز به یک پایگاه داده MySQL دارد و اگر پروژه گسترش پیدا کند ممکن است نیاز به نصب چند ماژول اضافی برای PHP و تنظیمات مختلف داشته باشید.
پیشنهاد میشود جهت یادگیری بهتر و موثرتر دورهی آموزش داکر حتما پیش از شروع نرمافزار داکر را را از وبسایت docs.docker.com دانلود نمایید و سپس اقدامات لازم جهت نصب داکر را با توجه به آموزش ارائه شده در فصل اول دوره انجام دهید.
یکی از نکاتی که پیش از شروع آموزش Docker باید به آن توجه کنید، آشنایی نسبی با مفاهیم سیستمعاملهای لینوکس است.
از ویژگیهای مهم دورهی آموزش داکر که موجب به وجود آمدن تمایز در میان سایر دورههای آموزش داکر رایگان و یا آموزش به ازای پرداخت هزینه وجود دارد، میتوان به شیوههای استفاده شده در تدریس اشاره که دروس این دوره با تکیه بر تسلط زیادی که بر مفاهیم دارد، به ارائه مفاهیم به صورت کامل و با بیانی ساده به همراه، استفاده از شکلها، گرافها و اسلاید در جهت تفهیم بهتر و دقیقتر موضوعات و همچینین بیان مثال متنوع برای مباحث مطرح شده میپردازد.
وجود تمرینهای استاندارد و منطق با مباحث تدریس شده در دوره آموزشی، تعامل مدرس با دانشجویان دوره و پروژه پایانی نیز از دیگر مزیت های این دورهی آموزش داکر مکتبخونه میباشد.
در این فصل با ویژگیهای مختلف داکر و مفاهیم اولیه آشنا شده و نحوه نصب داکر را بر روی لینوکس و ویندوز فرامیگیرید برخی از
ویژگیهای مهم داکر عبارتاند از:
DockerHub (داکرهاب) یک سرویس رجیستری در cloud است که به شما امکان میدهد تصاویر Docker را که توسط جوامع دیگر ساخته شدهاند بارگیری کنید. همچنین میتوانید image ساخته شده توسط Docker خود را در مرکز Docker بارگذاری کنید. در این فصل، نحوه بارگیری و استفاده از image Jenkins Docker از هاب داکر را مشاهده خواهیم کرد.
کانتینرها نمونههایی از image Dockerها هستند که میتوانند با استفاده از دستور Docker run اجرا شوند. هدف اصلی داکر اجرای کانتینرها است.
اجرای یک کانتینر
اجرای کانتینرها با دستور Docker run مدیریت میشود. برای اجرای یک کانتینر در حالت تعاملی، ابتدا Docker container را راهاندازی کنید.
در داکر، همه چیز بر اساس image است. image ترکیبی از یک سیستم فایل و پارامترها است.
Docker از جنبههای شبکه مراقبت میکند تا کانتینرها بتوانند با کانتینرهای دیگر و همچنین با Docker Host ارتباط برقرار کنند. اگر ifconfig را روی Docker Host (داکر هاست) انجام دهید، آداپتورDocker Ethernet را مشاهده خواهید کرد. این آداپتور هنگام نصب Docker بر روی Docker Host ایجاد میشود.
Docker دارای چندین درایور ذخیرهسازی است که به آنها امکان میدهد با دستگاههای ذخیرهسازی اساسی کار کنند. جدول زیر درایورهای ذخیرهسازی مختلف را به همراه فناوری مورد استفاده برای درایورهای ذخیرهسازی نشان میدهد.
تکنولوژی درایور ذخیرهسازی
OverlayFS overlay or overlay2
AUFS aufs
Btrfs brtfs
Device Manager devicemanager
VFS vfs
ZFS zfs
Docker Compose برای اجرای چندین کانتینر بهعنوان یک سرویس واحد استفاده میشود. بهعنوانمثال، فرض کنید شما یک برنامه کاربردی داشته باشید که به NGNIX و MySQL نیاز داشته باشد، میتوانید یک پرونده ایجاد کنید که هر دو محفظه را بهعنوان یک سرویس بدون نیاز به شروع جداگانه شروع کند.
در این فصل، نحوه کار با Docker Compose را خواهیم دید. سپس، همچنین چگونگی دریافت یک سرویس ساده با MySQL و NGNIX را که با استفاده از Docker Compose در حال اجرا است، بررسی خواهیم کرد.
Docker Cloud سرویسی است که توسط Docker ارائه میشود و در آن میتوانید عملیات زیر را انجام دهید:
Nodes: میتوانید Docker Cloud را به ارائهدهندگان ابر موجود خود مانند Azure و AWS متصل کنید تا کانتینرها را در این محیطها بچرخانید.
Cloud Repository:Cloud مکانی را فراهم میکند که بتوانید مخازن خود را در آن ذخیره کنید.
Continuous Integration: با Github ارتباط برقرار کنید و یک خط لوله ادغام مداوم ایجاد کنید.
Application Deployment: استقرار و مقیاسبندی زیرساختها و کانتینرها.
Continuous Deployment: میتواند استقرارها را بهصورت خودکار انجام دهد.
در این فصل مثالهای کاربردی در خصوص تمامی مواردی که تاکنون آموزش داده شد مورد بررسی و اجرا قرار میگیرد.
Kubernetes یک چارچوب تخصصی برای Docker Containerها است که با در اختیار قراردادن Containerها اعمال خاصی را میتواند انجام دهد. بهعنوانمثال، شما میتوانید دو سرویس داشته باشید - یک سرویس شامل nginx و mongoDB و یک سرویس دیگر حاوی nginx و redis. هر سرویس میتواند دارای یک IP یا نقطه سرویس باشد که توسط برنامههای دیگر قابل اتصال باشد. سپس Kubernetes برای مدیریت این سرویسها استفاده میشود.
اطلاعات بیشتر
از مجموع 101 امتیاز
32 نظرنظرات بیشتر
پس از گذراندن محتوای دوره به صورت آنلاین (بدون دانلود) در سایت مکتبخونه، در صورتی که حد نصاب قبولی در دوره را کسب و تمرین ها و پروژه های الزامی را ارسال کنید، گواهینامه رسمی پایان دوره توسط مکتبخونه به اسم شما صادر شده و در اختیار شما قرار میگیرد.
قابل اشتراکگذاری در
صادق کریمی دانشآموخته کارشناسی ارشد رشته مهندسی سیستمهای مخابرات از دانشگاه امیرکبیر است.
وی اکنون در حوزه مخابرات سلولی فعالیت دارد و در حال حاضر در شرکت ایرانسل به عنوان مهندس آنالیز دادهها در حوزه امنیت شبکه فعالیت دارد و علاقهمند به استفاده از هوش مصنوعی و یادگیری ماشین در سیستمهای مخابراتی است. همچنین، ایشان در زمینه پیادهسازی میکروسرویسها و containerها با تمرکز بر نسل 5G شبکههای سلولی و Telco cloud فعالیت دارد.
اطلاعات بیشتر
مکتب خونه بزرگترین پلتفرم آموزش مجازی در ایران محسوب میشود که بیش از یک دهه است در زمینه آموزش مجازی فعالیت میکند. از اهداف مهم مکتب خونه در دسترس قرار دادن آموزشها برای تمام مردم در گروههای سنی مختلف میتوان نام برد. این مکتبِ مجازی، بر این باور است که هیچکس نباید به خاطر شرایط مالی و یا موقعیت مکانی از بهرهگیری آموزشها باز بماند و باور دارد که میتواند این هدف را به سرانجام برساند.
مکتب خونه یک آکادمی آنلاین تخصصها است که دروس مختلفی را در زمینههای متنوع ارائه میدهد. شما میتوانید در مکتبخونه دورههای رایگان و پلاس را در حوزههای مختلف ببینید.
دورههای آموزش برنامه نویسی به شما کمک میکنند تا به یکی از پردرآمدترین و جذابترین مهارتهای دنیای امروز مسلط شوید. آموزش یادگیری ماشین و آموزش پردازش تصویر تا آموزش طراحی سایت، همه چیز برای ورود به دنیای تکنولوژی فراهم است. این دورهها مناسب هر سطحی از مبتدی تا حرفهای هستند.
در دنیای امروزی، یادگیری مهارتهای آیتی و نرمافزار امری ضروری است. دورههای مکتبخونه در این زمینه مانند دورههای آموزش شبکه، آموزش CCNA ، آموزش بلاک چین و غیره، به شما کمک میکنند تا مهارتهایی چون مدیریت شبکه و استفاده از نرمافزارهای مختلف را به راحتی و از صفر تا صد بیاموزید. بدون نیاز به پیشزمینه تخصصی، این دورهها شما را برای ورود به بازار کار آماده میکنند.
اگر به دنبال یادگیری زبان جدید هستید یا میخواهید مهارتهای زبانی خود را تقویت کنید، مکتبخونه با دورههای متنوع آموزش زبان انگلیسی، آموزش زبان فرانسوی، آموزش زبان آلمانی و بسیاری دیگر، بهترین گزینه برای شما است. شما میتوانید با تمرین و آموزشهای ساختارمند به سرعت در زبانهای مختلف پیشرفت کنید و دنیایی از فرصتهای جدید را پیشروی خود ببینید.
آموزشهای مدیریت و کسبوکار مکتبخونه برای کسانی است که میخواهند موفقیت در دنیای تجارت را تجربه کنند. با دورههایی از آموزش مدیریت، دوره منابع انسانی ، آموزش هوش تجاری و تحلیل دادهها تا کارآفرینی و آموزش فروش، میتوانید مهارتهای لازم برای راهاندازی و مدیریت یک کسبوکار موفق را کسب کرده و ایدههای خود را به واقعیت تبدیل کنید.
در دنیای پیچیده امروزی، داشتن دانش مالی و سرمایهگذاری کلید موفقیت است. مکتبخونه با دورههای مالی و سرمایهگذاری در دستهبندیهای مختلف مانند آموزش پرایس اکشن، آموزش تحلیل تکنیکال و غیره، شما را به مهارتهایی مجهز میکند که بتوانید بهترین تصمیمات مالی را بگیرید و سرمایهگذاریهای خود را هوشمندانه مدیریت کنید.
دورههای فنی و مهندسی مکتبخونه برای دانشجویان و علاقهمندان به این حوزه فرصتی عالی است تا مفاهیم کلیدی و تخصصی در آموزش مهندسی کامپیوتر، آموزش مهندسی مکانیک، عمران و سایر رشتههای فنی را با اساتید برتر کشور یاد بگیرند. این دورهها از بهترین اساتید و دانشگاههای کشور مانند دانشگاه صنعتی شریف و دانشگاه تهران به شما کمک میکنند تا دروس دانشگاهی را بهخوبی درک کنید و مهارتهای عملی خود را ارتقا دهید.
مهارتهای زندگی نقش مهمی در موفقیت و رضایت شخصی دارند. مکتبخونه با ارائه دورههای متنوع در زمینههای مانند آموزش مدیریت تعارض، مهاجرت کاری، مهارتهای ارتباطی و غیره، به شما کمک میکند تا زندگی متعادلتر و موفقتری داشته باشید. این دورهها به شما ابزاری برای بهتر زندگی کردن و برخورد با چالشهای روزمره میدهد.
مکتبخونه برای دانشجویان و علاقهمندان به علوم پایه، علوم انسانی و پزشکی، دورههایی کاربردی و مفید را فراهم کرده است. با این دورهها میتوانید از یادگیری دروس پیچیدهای مثل فیزیک، شیمی، روانشناسی، اقتصاد و حتی دروس پزشکی بهرهمند شوید و پایههای علمی خود را تقویت کنید.
اگر به دنبال پرورش استعدادهای هنری خود هستید، مکتبخونه با دورههای هنری در زمینههایی مانند آموزش گرافیک ، آموزش عکاسی، آموزش نستعلیق، طراحی مد و معماری، بهترین انتخاب است. این دورهها به شما کمک میکنند تا خلاقیت خود را به شکلی حرفهای و قابل اجرا به کار بگیرید و در مسیر هنری خود پیشرفت کنید.
مکتب خونه علاوه بر ارائه دادن دورههای پلاس، مجموعهای شامل ۱۵۰۰۰ ساعت ویدئوی آموزشی رایگان ارائه داده است. این ویدئوهای رایگان در زمینه آی تی، برنامهنویسی، مدیریت و کارآفرینی، مالی و سرمایهگذاری، علوم انسانی وغیره هستند. رایگان بودن این دورهها از کیفیت این دورهها کم نمیکند؛ بلکه آموزش و تهیه این ویدئوها توسط اساتید خبره ایران تدارک دیده شده است. اکثر این استادان برجسته از دانشگاه برتر شهید بهشتی، امیر کبیر، صنعتی شریف و غیره هستند. آکادمی مکتب خونه سعی دارد با انجام پروژههای رایگان در راستای تحقق اهداف خود قدمی بردارد.