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

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

مانند هر نرم افزار دیگری، Docker، طیف وسیعی از اصطلاحات مربوط به خدمات خود را به کاربران معرفی می‌کند. کاربران باید با مفاهیمی مانند Dockerfileها، imageها، containerها و سایر کلمات مخصوص Docker آشنا شوند. پس از تسلط بر واژگان، مرحله بعدی عادت کردن به استفاده از دستورات Docker است. یادگیری همه دستورات و گزینه‌های مربوط به آن‌ها بسیار زمان بر و سخت است.

 

مهم نیست که در Docker تازه کار هستید؛ یا قبلاً تجربه‌ای در زمینه containerization دارید، همیشه خوب است که یک مرجع برای همه دستورات رایج Docker داشته باشید.

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

 

این مطلب نیز ممکن است برای شما مفید باشد: تفاوت دستور ADD و COPY در Docker

 

دستورات Docker Container

در این قسمت، مهم‌ترین دستورات مربوط به چرخه عمر Docker Container را خواهید یافت.

ایجاد یک container (بدون راه‌اندازی آن):

docker create [IMAGE]

تغییر نام container موجود:

docker rename [CONTAINER_NAME] [NEW_CONTAINER_NAME]

اجرای یک دستور در یک container جدید:

docker run [IMAGE] [COMMAND]

حذف container پس از خروج از آن:

docker run --rm [IMAGE]

راه‌اندازی یک container و در حال اجرا نگه داشتن آن:

docker run -td [IMAGE]

 

راه‌اندازی یک container، اختصاص دادن یک pseudo-TTY متصل به stdin مربوط به container و ایجاد یک پوسته bash تعاملی در container:

docker run -it [IMAGE]

ایجاد، راه‌اندازی و اجرای یک دستور در داخل container و حذف container پس از اجرای دستور:

docker run -it-rm [IMAGE]

حذف یک container (در صورت عدم اجرا):

docker rm [CONTAINER]

به روزکردن پیکربندی یک یا چند container:

docker update [CONTAINER]

 

راه‌اندازی و توقف containerها

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

راه‌اندازی یک container:

docker start [CONTAINER]

متوقف سازی یک container در حال اجرا:

docker stop [CONTAINER]

متوقف سازی یک container در حال اجرا و راه‌اندازی مجدد آن:

docker restart [CONTAINER]

متوقف سازی موقت فرآیندها در یک container در حال اجرا:

docker pause [CONTAINER]

 

خارج کردن فرآیندها از توقف موقت در یک container در حال اجرا:

docker unpause [CONTAINER]

مسدود کردن یک container تا متوقف شدن دیگر containerها (پس از آن کدهای خروج آن‌ها را چاپ می‌کند):

docker wait [CONTAINER]

کشتن (kill) یک container با ارسال SIGKILL به یک container در حال اجرا:

docker kill [CONTAINER]

وصل کردن ورودی، خروجی و پیام‌های خطای استاندارد محلی به یک container در حال اجرا:

docker attach [CONTAINER]

 

این مطلب نیز ممکن است برای شما مفید باشد: اجرای Docker Container در پس زمینه (حالت Detached)

 

دستورات Docker Image

در ادامه تمام دستورات لازم برای کار با imageهای Docker ارائه شده است.

ایجاد یک image از یک Dockerfile:

docker build [URL]

کد زیر، imageای را از یک Dockerfile در دایرکتوری فعلی می‌سازد و image را برچسب گذاری می‌کند:

docker build -t 

برداشتن یک image از یک رجیستری:

docker pull [IMAGE]

قرار دادن یک image به رجیستری:

docker push [IMAGE]

 

ایجاد یک image از یک tarball:

docker import [URL/FILE]

ایجاد یک image از یک container:

docker commit [CONTAINER] [NEW_IMAGE_NAME]

حذف یک image:

docker rmi [IMAGE]

بارگذاری image از یک tar archive یا stdin:

docker load [TAR_FILE/STDIN_FILE]

ذخیره یک image در فرمت یک tar archive (در STDOUT با همه لایه‌ها، برچسب‌ها و نسخه‌های اصلی قرار می‌گیرد)

docker save [IMAGE] > [TAR_FILE]

 

این مطلب نیز ممکن است برای شما مفید باشد: نحوه نامگذاری یا تغییر نام Docker Containers

 

دستورات Docker برای بدست آوردن اطلاعات container و image

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

نمایش containerهای در حال اجرا:

docker ps

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

docker ps -a

نمایش گزارش‌های یک container در حال اجرا

docker logs [CONTAINER]

نمایش اطلاعات سطح پایین در مورد Docker objectها:

docker inspect [OBJECT_NAME/ID]

نمایش رویدادهای زمان واقعی یک container:

docker events [CONTAINER]

 

نمایش نگاشت پورت برای یک container:

docker port [CONTAINER]

نمایش فرآیندهای در حال اجرا در یک container:

docker top [CONTAINER]

نمایش آمار مصرف منابع containerها:

docker stats [CONTAINER]

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

docker diff [CONTAINER]

لیست تمام imageهایی که به صورت محلی با موتور docker ذخیره شده‌اند:

docke image ls

نمایش تاریخچه یک image:

docker history [IMAGE]

 

این مطلب نیز ممکن است برای شما مفید باشد: به اشتراک گذاری داده ها بین Docker Container

 

شبکه‌ها

یکی از ارزشمندترین ویژگی‌های نرم افزار Docker توانایی اتصال containerها به یکدیگر و سایر موارد است. این بخش دستورات مربوط به شبکه را پوشش می‌دهد.

نمایش شبکه‌ها:

docker network ls

حذف یک یا چند شبکه:

docker network rm [NETWORK]

نمایش اطلاعات یک یا چند شبکه:

docker network inspect [NETWORK]

اتصال یک container به یک شبکه:

docker network connect [NETWORK] [CONTAINER]

قطع اتصال یک container از یک شبکه:

docker network disconnect [NETWORK] [CONTAINER]

شما می‌توانید همه دستورات ذکر شده را در یک صفحه مرجع مناسب در تصویر زیر مشاهده کنید.

 

 

 

 

منبع:

phoenixnap