آموزش داکر برای مبتدیان در سال ۲۰۲۵
اگر می خواهید به آموزش داکر بپردازید این مقاله مختص شماست. چرخه عمر توسعه برنامه (ADLC) یک فرایند پویا است که شامل مراحل مختلفی مانند ساخت، آزمایش و استقرار برنامه ها می شود. با این حال، تضمین سازگاری و کارایی در تمام این مراحل اغلب چالش های قابل توجهی به همراه دارد. در اینجا است که داکر به کمک می آید. داکر به عنوان یک پلتفرم کانتینرسازی، به توسعه دهندگان این امکان را می دهد که برنامه ها و وابستگی های آن ها را در واحدهای ایزوله ای به نام کانتینر بسته بندی کنند.

اما داکر چگونه این فرایند ADLC را آسان تر می کند؟ پاسخ در کانتینرها نهفته است. هنوز هم گیج کننده است؟ مشکلی نیست! این آموزش داکر، فرایندها و مفاهیم مختلف این پلتفرم را توضیح می دهد که باعث رفع ابهام شما می شود و شما را قادر می سازد تا سفر خود را به عنوان یک متخصص داکر آغاز کنید. بیایید با یک مرور کلی شروع کنیم.
داکر چیست؟
داکر یک پلتفرم کانتینرسازی متن باز است که توانایی منحصر به فردی در توسعه برنامه دارد. این پلتفرم، کانتینرهایی را فراهم می کند که در محیط های مختلف از توسعه تا تولید، به صورت یکنواخت اجرا می شوند. این کانتینرها، برنامه ها و وابستگی های آن ها را ذخیره می کنند و از زیرساخت پایه و سایر کانتینرها جدا هستند. بنابراین، توسعه دهندگان از آن ها برای اجرای آسان برنامه های خود در محیط های مختلف استفاده می کنند.
آیا این پلتفرم جالب نیست؟ خوب، چیزهای بیشتری وجود دارد که در طول مقاله کشف خواهید کرد. ابتدا فرآیند نصب آن را بررسی می کنیم.
چگونه داکر را در ویندوز نصب کنیم
نصب داکر در ویندوز شامل آشنایی با الزامات سیستم و دنبال کردن چندین مرحله است.
پیکربندی سیستم ویندوز:
- ویندوز 10 یا 11 با سیستم عامل ۶۴ بیتی
- نسخه پرو بالاتر از 2004
- نسخه Enterprise یا Education بالاتر از 1909
- رم ۴ گیگابایت یا بیشتر
- تنظیمات BIOS با پشتیبانی از مجازی سازی سخت افزاری
- قابلیت های Hyper-V، WSL 2 و Container باید در ویندوز داخلی باشند
مراحل نصب داکر روی ویندوز:
- به وب سایت رسمی مراجعه کرده و فایل را دانلود کنید.
- روی فایلexe دوبار کلیک کنید تا فرآیند نصب شروع شود.
- ویژگی Hyper-V ویندوز را در صفحه پیکربندی فعال نگه دارید.
- مراحل نصب را با دقت دنبال کنید.
- پس از اتمام نصب، روی “Close and restart” کلیک کنید تا سیستم مجدداً راه اندازی شود.
چگونه داکر را در اوبونتو نصب کنیم
شما همچنین می توانید داکر را روی اوبونتو نصب کنید. این کار شامل چند مرحله با برخی الزامات خاص است.
پیکربندی سیستم اوبونتو:
- نسخه ۶۴ بیتی اوبونتو 20.04 یا جدیدتر
- حداقل ۴ گیگابایت رم
- اتصال اینترنت پایدار برای دانلود فایل های مورد نیاز
- دسترسی مدیریتی (دسترسی sudo)
- پشتیبانی از مجازی سازی سخت افزاری در BIOS سیستم فعال شده باشد
مراحل نصب داکر روی اوبونتو:
ترمینال را باز کرده و با اجرای دستور زیر، فهرست بسته های سیستم را به روزرسانی کنید.
sudo apt update && sudo apt upgrade -y
برای نصب پیش نیازها، دستور زیر را اجرا کنید:
sudo apt install apt-transport-https ca-certificates curl
software-properties-common -y
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg –dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
مخزن پایدار داکر را به لیست منابع بسته اضافه کنید:
echo “deb [arch=amd64
signed-by=/usr/share/keyrings/docker-archive-keyring.gpg]
https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable” |
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
فهرست بسته ها را به روزرسانی کرده و داکر را نصب کنید:
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io -y
برای تأیید نصب، نسخه داکر را بررسی کنید:
docker –version
برای اجرای داکر هنگام راه اندازی سیستم، آن را فعال کرده و اجرا کنید:
sudo systemctl start docker
sudo systemctl enable docker
برای اجرای دستورات داکر بدون استفاده از sudo، کاربر خود را به گروه docker اضافه کنید:
sudo usermod -aG docker $USER
از سیستم خارج شوید و دوباره وارد شوید تا به پلتفرم دسترسی پیدا کنید.
دوره های گواهینامه محاسبات ابری igmGuru را برای توسعه همه جانبه بررسی کنید.
درک معماری داکر
داکر دارای معماری کلاینت-سرور است که در آن کلاینت ها برای ساخت، میزبانی و توزیع کانتینرها با daemon داکر تعامل دارند. کلاینت و daemon می توانند در یک سیستم باشند یا از راه دور به یکدیگر متصل شوند. این اتصال از طریق REST API بر بستر شبکه یا سوکت UNIX برقرار می شود.
این معماری امکان استقرار و مدیریت مؤثر کانتینرها را برای توسعه دهندگان فراهم می سازد و شامل اجزای مختلفی است.
مقایسه معماری داکر با معماری کوبرنتیز برای تحلیل و درک بهتر
اجزای داکر
داکر دارای اجزای زیادی است که به صورت تجمعی کار می کنند تا محیطی کارآمد برای توسعه برنامه ارائه دهند. بررسی این اجزا می تواند درک عمیقی از نحوه عملکرد و کاربردهای این ابزار به شما بدهد. در اینجا همچنین با نحوه استفاده بهتر از این ابزار آشنا خواهید شد. بیایید شروع کنیم!
کلاینت و سرور داکر
این اساساً یک راه حل مبتنی بر دستور خط فرمان است. در سیستم های لینوکس یا مک از ترمینال برای ارسال دستورات از کلاینت به دیمن استفاده می شود. این دستورات از طریق REST API ارسال می شوند. توسعه دهندگان می توانند از آن برای صادر کردن دستوراتی مانند Pull استفاده کنند.
این دستور، درخواستی را به دیمن برای انجام عملیات از طریق ارتباط با سایر اجزا مانند ایمیج، کانتینر یا رجیستری ارسال می کند. دیمن در واقع یک سرور است که با سیستم عامل ارتباط برقرار می کند تا خدمات را اجرا کند. دیمن به طور مداوم در حال گوش دادن به REST API است تا ببیند آیا نیاز به اجرای درخواست خاصی دارد یا نه.
ایمیج داکر
ایمیج یک قالب است که دستورالعمل های مورد نیاز برای کانتینر را در خود نگه می دارد. این قالب بر پایه YAML (Yet Another Markup Language) ساخته شده است. در فایل YAML ساخته می شود و به صورت رجیستری داکر میزبانی می گردد. ایمیج شامل چندین لایه کلیدی است که هر کدام به لایه زیرین خود وابسته اند.
این لایه ها از طریق اجرای هر دستور از فایل Dockerfile ساخته می شوند و در حالت فقط خواندنی هستند. توسعه دهندگان می توانند از لایه پایه که معمولاً شامل ایمیج پایه و سیستم عامل پایه است، شروع کنند. سپس یک لایه وابستگی بالای آن قرار می گیرد. این ها شامل دستوراتی هستند که در یک فایل فقط خواندنی قرار دارند و به Dockerfile تبدیل می شوند.
رجیستری داکر
رجیستری داکر برای میزبانی و توزیع انواع مختلف ایمیج ها استفاده می شود. این رجیستری شامل مجموعه ای از ایمیج ها به نام ریپازیتوری است که با استفاده از دستورالعمل های نوشته شده در YAML ساخته می شود. توسعه دهندگان می توانند این ریپازیتوری را به اشتراک بگذارند و ذخیره کنند. آن ها می توانند برای ایمیج ها نام تگ تعریف کنند تا افراد بتوانند آن ها را در رجیستری شناسایی و به اشتراک بگذارند.
این رجیستری با استفاده از رجیستری Docker Hub مدیریت می شود. به صورت عمومی در دسترس است، به این معنا که هر کسی می تواند به آن دسترسی داشته باشد. همچنین می توان یک رجیستری شخصی ایجاد کرد. این رجیستری شخصی می تواند شامل ایمیج های عمومی و خصوصی باشد. از طریق دستورات Push و Pull ایجاد می شود.
کانتینر داکر
کانتینر مجموعه ای اجرایی از برنامه ها و وابستگی های آن هاست که با هم بسته بندی شده اند. این مجموعه شامل تمام دستوراتی است که برای اجرای راه حل مورد نظر نیاز است. به طور کلی سبک و قابل حمل است زیرا دارای ساختار تکراری درونی می باشد. یکی دیگر از مزایای این مؤلفه این است که می تواند به طور کامل به صورت ایزوله اجرا شود.
محیط های داکر بر امنیت سیستم عامل میزبان یا تنظیمات خاص پیکربندی آن تأثیر نمی گذارند. علاوه بر این، فضای ذخیره سازی آن ها می تواند بین چندین کانتینر به اشتراک گذاشته شود. این ویژگی به ویژه زمانی مفید است که با ماشین های مجازی کار می کنید که تنها مقدار خاصی از فضای ذخیره سازی را برای هر محیط فراهم می کنند.
Docker Compose
داکر کامپوز یکی از مؤلفه های پیشرفته این ابزار است. برای اجرای چندین کانتینر به عنوان یک سرویس طراحی شده است. این کار با اجرای هر کانتینر به صورت ایزوله اما در عین حال تعامل آن ها با یکدیگر انجام می شود.
محیط های Compose نیز با استفاده از YAML ساخته می شوند. برای اجرای سرور Apache که فقط یک پایگاه داده دارد استفاده می شود. چندین کانتینر اضافی ایجاد می کند که خدمات اضافی را هم زمان اجرا می کنند.
Docker Swarm
داکر سوآرم یکی دیگر از اجزای پیشرفته این پلتفرم است. اساساً یک سرویس برای کانتینرهاست که به توسعه دهندگان و مدیران فناوری اطلاعات در ایجاد و مدیریت خوشه ای از نودهای Swarm کمک می کند. هر یک از این نودها یک دیمن هستند که از طریق API با یکدیگر تعامل دارند.
یک سوآرم شامل دو نوع نود است: نود مدیر (Manager Node) و نود کارگر (Worker Node). نود مدیر عملیات مدیریت خوشه را انجام می دهد. نود کارگر وظایف تعیین شده توسط نود مدیر را اجرا می کند.
اجرای اولین کانتینر داکر
حالا که مفاهیم پایه ای داکر را درک کردید، بیایید وارد عمل شویم و اولین کانتینر خود را اجرا کنیم! این کار به شما کمک می کند تا درک خود را تثبیت کرده و ببینید چقدر آسان است که با این پلتفرم، برنامه ای را اجرا کنید. در این مثال، ما از یک ایمیج بسیار ساده ی hello-world استفاده می کنیم با دستور زیر:
docker run hello-world
این دستور بررسی می کند که آیا ایمیج hello-world به صورت محلی روی سیستم شما موجود است یا نه. اگر موجود نباشد، این ایمیج به صورت خودکار از Docker Hub دانلود خواهد شد. سپس یک کانتینر جدید از آن ایمیج ایجاد و اجرا می شود.
کانتینر hello-world به گونه ای طراحی شده که فقط پیامی را در ترمینال چاپ کرده و سپس خارج می شود. اگر خروجی ای مشابه نمونه زیر را مشاهده کردید، یعنی نصب شما به درستی کار می کند:
Hello from Docker!
مدیریت کانتینرهای در حال اجرا
پس از اجرای کانتینرها، باید بدانید چطور آن ها را مدیریت کنید. داکر چندین دستور برای کنترل چرخه ی عمر کانتینرها ارائه می دهد. در اینجا برخی از دستورات رایج و ضروری آورده شده اند:
نمایش کانتینرهای در حال اجرا
برای مشاهده لیستی از کانتینرهای در حال اجرا از دستور زیر استفاده کنید. این دستور اطلاعاتی مانند ID، ایمیج، فرمان، وضعیت و پورت ها را در قالب یک جدول نمایش می دهد:
docker ps
نمایش همه ی کانتینرها
برای دیدن همه ی کانتینرها، از جمله آن هایی که متوقف شده اند، از پرچم -a استفاده کنید:
docker ps -a
متوقف کردن یک کانتینر
این دستور، کانتینر را متوقف می کند:
docker stop [container_id]
شروع یک کانتینر متوقف شده
برای شروع دوباره یک کانتینر متوقف شده از این دستور استفاده کنید:
docker start [container_id]
راه اندازی مجدد یک کانتینر
این دستور ابتدا کانتینر را متوقف کرده و سپس دوباره آن را اجرا می کند:
docker restart [container_id]
این دستورات کنترل پایه ای لازم برای مدیریت کانتینرها و اجرای روان برنامه ها را در اختیار شما قرار می دهند.
حذف ایمیج ها و کانتینرها
با گذشت زمان، کار کردن با این پلتفرم می تواند منجر به تجمع ایمیج های بدون استفاده و کانتینرهای متوقف شده شود که فضای دیسک را اشغال می کنند. بنابراین، پاک سازی دوره ای این منابع اهمیت دارد.
حذف کانتینرها
برای حذف یک کانتینر متوقف شده از دستور زیر استفاده کنید:
docker rm [container_id]
برای حذف همه کانتینرهای متوقف شده به طور همزمان از این دستور استفاده کنید:
docker rm $(docker ps -a -q -f status=exited)
این دستور از ترکیب گزینه های docker ps استفاده می کند:
- -a: نمایش همه ی کانتینرها (متوقف و در حال اجرا)
- -q: نمایش فقط شناسه کانتینر
- -f status=exited: فیلتر کردن کانتینرها بر اساس وضعیت exited
حذف ایمیج ها
برای حذف یک ایمیج از دستور زیر استفاده کنید:
docker rmi [image_id]
قبل از حذف ایمیج، باید مطمئن شوید که هیچ کانتینری از آن استفاده نمی کند. در غیر این صورت، با خطا مواجه خواهید شد. ابتدا باید آن کانتینرها را حذف کنید.
با حذف منظم کانتینرها و ایمیج های بدون استفاده، می توانید محیط داکر خود را تمیز و کارآمد نگه دارید.
آیا شما به دنبال کسب اطلاعات بیشتر در مورد "آموزش داکر برای مبتدیان در سال ۲۰۲۵" هستید؟ با کلیک بر روی تکنولوژی, کسب و کار ایرانی، ممکن است در این موضوع، مطالب مرتبط دیگری هم وجود داشته باشد. برای کشف آن ها، به دنبال دسته بندی های مرتبط بگردید. همچنین، ممکن است در این دسته بندی، سریال ها، فیلم ها، کتاب ها و مقالات مفیدی نیز برای شما قرار داشته باشند. بنابراین، همین حالا برای کشف دنیای جذاب و گسترده ی محتواهای مرتبط با "آموزش داکر برای مبتدیان در سال ۲۰۲۵"، کلیک کنید.