صفحه اصلی»دواپس و راهنمای اپلیکیشن : آموزش بهترین دستورات Docker

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

پرکاربردترین دستورات Docker

اشتراک گذاری:

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

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

چرا یادگیری دستورات Docker مهم است؟

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

  • کنترل کامل روی کانتینرها: با دستورات داکر می‌توانید کانتینرها را ایجاد، اجرا، متوقف و حذف کنید؛ بدون نیاز به واسطه‌های اضافی.
  • سرعت و انعطاف‌پذیری بیشتر: اجرای مستقیم دستورات باعث می‌شود کارها سریع‌تر انجام شوند و امکان اسکریپت‌نویسی و اتوماسیون نیز فراهم شود.
  • عیب‌یابی و مانیتورینگ دقیق: دستورات CLI ابزارهایی برای مشاهده لاگ‌ها، بررسی منابع مصرفی و تحلیل وضعیت کانتینرها در اختیار شما قرار می‌دهند.
  • یادگیری اصول DevOps: آشنایی با دستورات Docker، گامی مهم برای ورود به دنیای DevOps و کار با ابزارهایی مانند Kubernetes است.

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

آموزش دستورات Docker برای مبتدیان

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

جهت مطالعه بیشتر اینجا بخوانید:

مفاهیم کلیدی پیش از شروع

  • Image (ایمیج): قالب آماده‌ای از یک برنامه یا سرویس که می‌توان از آن کانتینر ساخت.
  • Container (کانتینر): نمونه‌  در حال اجرای یک ایمیج.
  • Volume (والیوم): فضایی برای ذخیره‌سازی داده‌ها به‌صورت پایدار.
  • Network (شبکه): بستری برای ارتباط بین کانتینرها.

دستورات پایه‌ای و کاربرد آن‌ها

بررسی نصب بودن Docker

docker --version

نمایش نسخه‌ نصب‌شده و اطمینان از فعال بودن Docker.

اجرای اولین کانتینر آزمایشی

docker run hello-world

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

لیست کانتینرهای فعال

docker ps

نمایش کانتینرهایی که در حال اجرا هستند.

لیست همه‌ کانتینرها (حتی متوقف‌شده‌ها)

docker ps -a

برای مشاهده تاریخچه‌  اجرای کانتینرها.

دانلود یک ایمیج از Docker Hub

docker pull ubuntu

ایمیج اوبونتو را از مخزن رسمی دریافت می‌کند.

اجرای یک کانتینر جدید از ایمیج

docker run -it ubuntu bash

یک کانتینر اوبونتو اجرا می‌شود و شما وارد محیط Bash آن می‌شوید.

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

پرکاربردترین دستورات داکر

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

 

دسته‌بندی دستور توضیح مثال کاربردی
مدیریت ایمیج‌ها docker pull دریافت ایمیج از Docker Hub
docker pull nginx
ساخت ایمیج docker build ساخت ایمیج از Dockerfile
docker build -t myapp .
مشاهده ایمیج‌ها docker images لیست ایمیج‌های موجود
docker images
حذف ایمیج docker rmi حذف یک ایمیج
docker rmi nginx
اجرای کانتینر docker run اجرای کانتینر از ایمیج
docker run -d nginx
ورود به کانتینر docker exec اجرای دستور داخل کانتینر
docker exec -it myapp bash
توقف کانتینر docker stop توقف اجرای کانتینر
docker stop myapp
حذف کانتینر docker rm حذف کانتینر متوقف‌شده
docker rm myapp
مشاهده کانتینرها docker ps لیست کانتینرهای فعال
docker ps
مشاهده همه کانتینرها docker ps -a لیست همه کانتینرها
docker ps -a
مشاهده لاگ‌ها docker logs نمایش خروجی کانتینر
docker logs myapp
بررسی منابع docker stats مانیتورینگ مصرف منابع
docker stats
بررسی جزئیات docker inspect اطلاعات کامل کانتینر یا ایمیج
docker inspect myapp
مدیریت والیوم‌ها docker volume ایجاد و مدیریت فضای ذخیره‌سازی
docker volume create myvol
مدیریت شبکه‌ها docker network ایجاد و اتصال شبکه‌ها
docker network create mynet

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

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

بهترین دستورات داکر برای مدیریت حرفه‌ای کانتینرها

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

1. اجرای دستور داخل کانتینر

docker exec -it container_name bash

این دستور برای ورود به محیط داخلی کانتینر و اجرای دستورات لینوکس و همچنین  برای بررسی تنظیمات یا اجرای دستی اسکریپت‌ها بسیار کاربردی است.

2. مشاهده لاگ‌های کانتینر

docker logs container_name

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

3. بررسی مصرف منابع کانتینر

docker stats

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

4. بررسی جزئیات کامل کانتینر یا ایمیج

docker inspect container_name

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

5. توقف همه کانتینرهای فعال

docker stop $(docker ps -q)

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

6. حذف همه کانتینرهای متوقف‌شده

docker rm $(docker ps -a -q)

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

7. حذف همه ایمیج‌های بدون استفاده

docker image prune -a

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

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

آبالون ارائه‌دهنده سرویس کوبرنتیز مدیریت شده

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

خرید سرویس کوبرنتیز

نکات تکمیلی و Best Practices برای استفاده حرفه‌ای از Docker

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

استفاده از alias برای ساده‌سازی دستورات

اگر با دستورات طولانی یا تکراری سروکار دارید، تعریف alias در فایل‌های پیکربندی ترمینال مثل ~/.bashrc یا ~/.zshrc می‌تواند سرعت کارتان را چند برابر کند. به‌جای تایپ چند خط، فقط یک کلمه کافی‌ست:

alias dps='docker ps -a'
alias drm='docker rm $(docker ps -a -q)'
alias dclean='docker system prune -a'

بعد از افزودن این خطوط، با اجرای source ~/.bashrc یا source ~/.zshrc تغییرات اعمال می‌شوند.

 ذخیره‌سازی دستورات در اسکریپت‌ها برای اتوماسیون

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

مثال: فایل start.sh برای اجرای یک کانتینر و بررسی وضعیت آن:

#!/bin/bash
docker run -d --name myapp nginx
docker ps
docker logs myapp

اجرا با دستور:

bash start.sh

 استفاده از Docker Compose برای مدیریت چند سرویس

وقتی پروژه‌تان شامل چند کانتینر است (مثلاً بک‌اند، دیتابیس، فرانت‌اند)، استفاده از Docker Compose باعث می‌شود همه چیز را با یک فایل YAML مدیریت کنید.

نمونه‌ ساده از docker-compose.yml:

version: '3'
services:
  web:
    image: nginx
    ports:
      - "80:80"
  db:
    image: postgres
    environment:
      POSTGRES_PASSWORD: example

اجرا با دستور:

docker-compose up -d

پاک‌سازی محیط کاری برای آزادسازی منابع

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

docker system prune -a

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

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

امنیت در محیط‌های کانتینری بسیار مهم است. چند توصیه کلیدی:

  • همیشه از ایمیج‌های رسمی یا معتبر استفاده کنید.
  • نسخه‌ ایمیج را مشخص کنید تا از تغییرات ناخواسته جلوگیری شود:
    docker pull nginx:1.25
    
  • از شبکه‌های ایزوله برای سرویس‌های حساس استفاده کنید:
    docker network create secure-net
    

 منابع یادگیری بیشتر برای تسلط کامل

برای یادگیری عمیق‌تر و به‌روز ماندن، این منابع را پیشنهاد می‌کنم:

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

جمع‌بندی

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

تسلط بر بهترین دستورات داکر نه‌تنها سرعت و دقت شما را در توسعه و استقرار نرم‌افزار افزایش می‌دهد، بلکه در مسیر یادگیری دوآپس، CI/CD و معماری‌های مدرن مثل Microservices نیز نقش کلیدی دارد.

مطالب مرتبط

DataOps چیست؟

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

12 مهر 1404

۵ روش برای بهینه کردن عملکرد NGINX

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

آشنایی با تی ماکس + راهنمای نصب و استفاده

Tmux ابزاری قدرتمند برای مدیریت هم‌زمان چند ترمینال در لینوکس است. در این مقاله از بلاگ آبالون، ابتدا معرفی می‌کنیم که تی‌ماکس چیست، سپس نحوه نصب، استفاده، ترفندها، کلیدهای میانبر و تفاوت آن با GNU Screen را بررسی خواهیم کرد.

دریافت سرویس تست رایگان

ارتباط با ابر زَس

تلفن:        91078149 –  021

ایمیل:       Sales@XaaS.ir