دستورات پیشرفته داکر/ آشنایی با دستورات مهم Docker

دستورات پیشرفته داکر/ آشنایی با دستورات مهم Docker
دستورات پیشرفته داکر/ آشنایی با دستورات مهم Docker
2 ماه پیش

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

 

داکر چیست؟

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

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

 

موارد مختلفی که می‌توانید از Docker استفاده کنید

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

1. توسعه و تست نرم‌افزار

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

2. انتقال و استقرار برنامه‌ها

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

3. میکرو سرویس‌ها و معماری‌های مبتنی بر خدمات

 استفاده از Docker در معماری‌های مبتنی بر خدمات و میکرو سرویس‌ها بسیار متداول است. هر سرویس را می‌توان درون یک کانتینر قرار داد و این کانتینرها را مستقل از یکدیگر و قابل مقیاس‌پذیر کرد. این امر به توسعه و استقرار سریع‌تر و پیکربندی آسان‌تر سرویس‌ها کمک می‌کند.

4. تست و اجرای برنامه‌ها بدون تاثیر بر محیط میزبان

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

5. مدیریت و استقرار پایگاه داده

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

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

موارد استفاده از داکر

۱۵ دستور پرکاربرد داکر

در زیر 15 دستور مهم و پرکاربرد در Docker را برای شما لیست کرده‌ایم.

docker run: برای اجرای یک کانتینر جدید استفاده می‌شود.

docker build: برای ساخت تصویر (image)جدید از Dockerfile استفاده می‌شود.

docker pull: برای دریافت یک تصویر از ریپازیتوری Docker استفاده می‌شود.

docker push: برای ارسال (push) یک تصویر به ریپازیتوری داکر استفاده می‌شود.

docker stop: برای توقف (stop) اجرای یک یا چند کانتینر استفاده می‌شود.

docker rm: برای حذف (remove) یک یا چند کانتینر استفاده می‌شود.

docker rmi: برای حذف (remove) یک یا چند تصویر استفاده می‌شود.

docker ps: برای نمایش لیست کانتینرهای در حال اجرا استفاده می‌شود.

docker images: برای نمایش لیست تصاویر موجود در سیستم استفاده می‌شود.

docker exec: برای اجرای یک دستور درون کانتینر در حال اجرا استفاده می‌شود.

docker logs: برای نمایش لاگ‌های یک کانتینر استفاده می‌شود.

docker network: برای مدیریت شبکه‌ها در Docker استفاده می‌شود.

docker volume: برای مدیریت و استفاده از ولوم‌ها (volumes) استفاده می‌شود.

docker-compose up: برای اجرای یک برنامه چندبخشی با استفاده از Docker Compose استفاده می‌شود.

docker stats: برای نمایش آمار مصرف منابع سیستم توسط کانتینرها استفاده می‌شود.

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

 

چگونه از دستورات داکر استفاده کنیم؟

برای استفاده از دستورات Docker، مراحل زیر را دنبال کنید:

نصب داکر

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

اجرای محیط Docker

 پس از نصب، محیط Docker بر روی سیستم شما فعال خواهد شد. بسته به سیستم‌عامل خود، می‌توانید از ترمینال (Command Prompt در ویندوز) یا محیط گرافیکی داکر استفاده کنید.

اجرای دستورات Docker

 حالا که داکر نصب و فعال است، می‌توانید از دستورات آن استفاده کنید. به‌عنوان‌مثال، می‌توانید دستور ""docker run را برای اجرای یک کانتینر استفاده کنید.

برای اجرای دستورات Docker، به ترمینال خود بروید و دستور مورد نظر را وارد کنید. هر دستور دارای پارامترها و نحوه استفاده خاص خود است. برای درک بهتر نحوه استفاده از هر دستور، می‌توانید به مستندات داکر مراجعه کنید یا از دستور ""docker -help برای دریافت راهنمایی در مورد دستور موردنظر استفاده کنید. لطفاً توجه داشته باشید که برای اجرای بعضی از دستورات داکر، شما ممکن است بسته به تنظیمات سیستم خود نیاز به دسترسی ریشه (sudo) داشته باشید.

چگونه از دستورات داکر استفاده کنیم؟

دستور docker- help چیست؟

دستور "docker -help" یک دستور خط فرمان است که در این پلتفرم استفاده می‌شود و به شما راهنمایی در مورد دستورات و پارامترهای موجود در داکر ارائه می‌دهد. با اجرای این دستور، می‌توانید فهرستی از دستورات و پارامترهای Docker را به همراه توضیح کوتاهی برای هرکدام مشاهده کنید. در ترمینال یا Command Prompt خود، دستور"docker -help" را اجرا کنید و نتیجه را مشاهده کنید. این دستور فهرستی جامع از دستورات و پارامترهای را نشان می‌دهد که شما می‌توانید برای کسب اطلاعات بیشتر درباره هر دستور و نحوه استفاده از آن‌ها از آن استفاده کنید. در نمونه‌ای از خروجی این دستور، می‌توانید فهرستی از بخشی از دستورات داکر را مشاهده کنید:

Management Commands:

 builder Manage builds

 config Manage Docker configs

 container Manage containers

 image Manage images

 network Manage networks

 node Manage Swarm nodes

 plugin Manage plugins

 secret Manage Docker secrets

 service Manage services

 stack Manage Docker stacks

 swarm Manage Swarm

 system Manage Docker

 trust Manage trust on Docker images

 volume Manage volumes

 

Commands:

 attach Attach local standard input, output, and error streams to a running container

 build Build an image from a Dockerfile

 commit Create a new image from a container's changes

 cp Copy files/folders between a container and the local filesystem

 create Create a new container

...

همچنین با اجرای "docker <command> -help" جایگزین کردن (<command> با نام دستور موردنظر)، می‌توانید راهنمایی مفصل‌تر درباره یک دستور خاص را دریافت کنید. به‌عنوان‌مثال، با اجرای"docker run -help"، راهنمایی در مورد دستور "docker run" را مشاهده خواهید کرد.

 

برای ایجاد یک کانتینر همراه با تصاویر در داکر از چه دستوری استفاده می‌شود؟

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

docker run [OPTIONS] IMAGE: [TAG|@DIGEST] [COMMAND] [ARG...]

در اینجا:

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

IMAGE نشان‌دهنده نام تصویری است که می‌خواهید برای ساخت کانتینر استفاده کنید. می‌توانید از نام تصویر به همراه برچسب (tag) یا شناسه (digest) استفاده کنید.

COMMAND و ARG نشان‌دهنده دستور اجرا شده درون کانتینر هستند. این قسمت اختیاری است و در صورت عدم تعیین، دستور پیش‌فرض تعیین‌شده در تصویر استفاده خواهد شد.

برای مثال، فرض کنید می‌خواهید یک کانتینر با تصویر ubuntu:latest ایجاد کنید. دستور زیر را می‌توانید استفاده کنید:

docker run -it ubuntu:latest

در این مثال، با -it یک ترمینال تعاملی را به کانتینر متصل می‌کنیم تا بتوانید دستورات داخل کانتینر را اجرا کنید. پس از اجرای این دستور، شما وارد کانتینر Ubuntu خواهید شد و می‌توانید دستورات و عملیات مورد نیاز خود را درون آن انجام دهید. توجه داشته باشید که با اجرای دستور docker run برای تصویری که در سیستم شما وجود ندارد، داکر ابتدا تصویر را از Docker Hub یا منبع دیگری که در تنظیمات آن تعیین‌شده است دانلود و سپس کانتینر را ایجاد خواهد کرد.

دستورات مهم داکر

برای نشان دادن لیست کانتینرها در داکر از چه دستوری استفاده می‌شود؟

برای نمایش لیست کانتینرهای در حال اجرا در داکر از دستور docker ps استفاده می‌شود. این دستور لیست کاملی از کانتینرهای در حال اجرا را به همراه جزئیات آن‌ها نمایش می‌دهد. ساختار کلی دستور docker ps به شکل زیر است:

 

 docker ps[OPTIONS]

 در کد دستوری بالا

OPTIONS شامل پارامترها و گزینه‌های مختلفی است که می‌توانید برای فیلتر کردن و مرتب‌سازی لیست کانتینرها استفاده کنید، مانند -a برای نمایش تمام کانتینرها (شامل کانتینرهای متوقف‌شده) و -q برای نمایش تنها شناسه (ID) کانتینرها.

به‌عنوان‌مثال، برای نمایش لیست کامل کانتینرهای در حال اجرا، می‌توانید از دستور زیر استفاده کنید:

docker ps

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

docker ps -a

این دستور لیست تمام کانتینرها را (شامل کانتینرهای در حال اجرا و متوقف‌شده) به همراه جزئیات آن‌ها نمایش می‌دهد.

 

برای شروع کانتینر از چه دستوری استفاده می‌شود؟

برای شروع یک کانتینر متوقف‌شده از دستور docker start استفاده می‌شود. این دستور به شما امکان می‌دهد یک کانتینر را که قبلاً متوقف‌شده بود، راه‌اندازی کنید و آن را به حالت اجرا برگردانید. ساختار کلی دستور docker start به شکل زیر است:

 docker start[OPTIONS] CONTAINER [CONTAINER...]

 

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

OPTIONS شامل پارامترها و گزینه‌های مختلفی است که می‌توانید در شروع کانتینر تنظیم کنید، مانند -a برای متصل کردن ترمینال به کانتینر و -i برای حالت تعاملی ورود به کانتینر.

CONTAINER نشان‌دهنده شناسه (ID) یا نام کانتینر است که می‌خواهید شروع کنید. می‌توانید چندین شناسه یا نام را به همراه دستور استفاده کنید. به‌عنوان‌مثال، برای شروع یک کانتینر با نام یا شناسه "my-container" می‌توانید از دستور زیر استفاده کنید:

docker start my-container

درصورتی‌که می‌خواهید ترمینال خود را به کانتینر متصل کنید و در آن وارد شوید، می‌توانید از آپشن -a و -i استفاده کنید:

docker start -ai my-container

این دستور کانتینر "my-container" را شروع کرده و ترمینال را به کانتینر متصل می‌کند، به‌طوری‌که می‌توانید دستورات و عملیات مورد نیاز خود را درون کانتینر اجرا کنید. توجه داشته باشید که تنها کانتینرهایی که در گذشته با دستور docker create ایجاد شده‌اند و در حالت متوقف قرار دارند، قابلیت شروع مجدد با استفاده از docker start را دارند.

دستورات داکر

برای اتصال به کانتینر در داکر باید از چه دستوری استفاده کنیم؟

برای اتصال به یک کانتینر از دستور docker exec استفاده می‌شود. این دستور به شما امکان می‌دهد دستورات و عملیات مورد نیاز را درون یک کانتینر در حال اجرا، اجرا کنید. ساختار کلی دستور docker exec به شکل زیر است:

 docker exec [OPTIONS]  CONTAINER COMMANDs [ARG...]

در خط کد بالا:

OPTIONS شامل پارامترها و گزینه‌های مختلفی است که می‌توانید در اجرای دستور داخل کانتینر تنظیم کنید، مانند -i برای حالت تعاملی ورود به کانتینر و -t برای تخصیص ترمینال.

CONTAINER نشان‌دهنده شناسه (ID) یا نام کانتینر است که می‌خواهید به آن متصل شوید.

COMMAND و ARG نشان‌دهنده دستور و آرگومان‌های موردنیاز هستند که درون کانتینر اجرا می‌شوند.

به‌عنوان‌مثال برای اتصال به یک کانتینر با نام یا شناسه "my-container" و اجرای دستور"ls" درون آن، می‌توانید از دستور زیر استفاده کنید:

docker exec -it my-container ls

در این مثال، با -it یک ترمینال تعاملی را به کانتینر متصل می‌کنیم و سپس دستور ls را درون کانتینر اجرا می‌کنیم. نتیجه اجرای دستور ls درون کانتینر را در ترمینال خود مشاهده خواهید کرد. در صورت تمایل به ورود به یک محیط تعاملی درون کانتینر (مانند یک پرونده فرمان یا یک مرورگر وب)، می‌توانید دستور موردنظر را به‌جای ls در دستور docker exec قرار دهید.

 

برای توقف کانتینر در داکر باید از چه دستوری استفاده شود؟

برای توقف یک کانتینر در Docker، از دستور docker stop استفاده می‌شود. این دستور به شما امکان می‌دهد کانتینر را به‌طور صحیح متوقف کرده و اجرای آن را متوقف نمایید. ساختار کلی دستور docker stop به شکل زیر است:

docker stop [OPTIONS] CONTAINER [CONTAINER...]

OPTIONS شامل پارامترها و گزینه‌های مختلفی است که می‌توانید برای تنظیمات مربوط به توقف کانتینر استفاده کنید.

CONTAINER نشان‌دهنده شناسه (ID) یا نام کانتینر است که می‌خواهید متوقف کنید. می‌توانید چندین شناسه یا نام را به همراه دستور استفاده کنید. به‌عنوان‌مثال، برای توقف یک کانتینر با نام یا شناسه "my-container" می‌توانید از دستور زیر استفاده کنید:

docker stop my-container

این دستور کانتینر "my-container" را متوقف می‌کند. همچنین می‌توانید چندین کانتینر را هم‌زمان متوقف کنید. برای این کار از شناسه‌ها یا نام‌های مختلف به شکل زیر استفاده کنید.

docker stop my-container1 my-container2

در این مثال کانتینرهای "my-container1" و"my-container2" را متوقف می‌کند.

 

برای حذف کانتینر در داکر از چه دستوری استفاده می‌شود؟

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

 

 docker rm  [OPTIONS]  CONTAINER [CONTAINER...] 

در خط کد بالا:

OPTIONS شامل پارامترها و گزینه‌های مختلفی است که می‌توانید برای تنظیمات مربوط به حذف کانتینر استفاده کنید. یکی از مهم‌ترین گزینه‌ها -f است که به شما اجازه می‌دهد کانتینر‌های در حال اجرا را نیز حذف کنید.

CONTAINER نشان‌دهنده شناسه (ID) یا نام کانتینر است که می‌خواهید حذف کنید. می‌توانید چندین شناسه یا نام را به همراه دستور استفاده کنید. به‌عنوان‌مثال برای حذف یک کانتینر با نام یا شناسه "my-container" می‌توانید از دستور زیر استفاده کنید:

docker rm my-container

اگر کانتینر در حال اجرا بود و می‌خواهید آن را حذف کنید، می‌توانید از گزینه -f استفاده کنید:

docker rm -f my-container

در این مثال، کانتینر "my-container "را حذف می‌کند، حتی اگر در حالت اجرا باشد. همچنین می‌توانید چندین کانتینر را هم‌زمان حذف کنید. برای این کار به‌صورت زیر عمل کنید.

docker rm my-container1 my-container2

در این مثال، کانتینرهای ""my-container1 و""my-container2 را حذف می‌کند.

 

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

برای از بین بردن (حذف نهایی) یک کانتینر در از دستور docker container rm استفاده می‌شود. این دستور به شما امکان می‌دهد کانتینر را به‌طور کامل از سیستم خود حذف کنید. ساختار کلی دستور docker container rm به شکل زیر است:

 docker container rm  [OPTIONS]  CONTAINER  [CONTAINER...]

در خط کد بالا:

OPTIONS شامل پارامترها و گزینه‌های مختلفی است که می‌توانید برای تنظیمات مربوط به حذف کانتینر استفاده کنید. یکی از مهم‌ترین گزینه‌ها -f است که به شما اجازه می‌دهد کانتینر‌های در حال اجرا را نیز حذف کنید.

CONTAINER نشان‌دهنده شناسه ((ID یا نام کانتینر است که می‌خواهید حذف کنید. می‌توانید چندین شناسه یا نام را به همراه دستور استفاده کنید. به‌عنوان‌مثال برای حذف نهایی یک کانتینر با نام یا شناسه "my-container" می‌توانید از دستور زیر استفاده کنید.

docker container rm my-container

اگر کانتینر در حال اجرا بود و می‌خواهید آن را حذف کنید، می‌توانید از گزینه -f استفاده کنید:

docker container rm -f my-container

در این مثال، کانتینر ""my-container را به‌طور کامل حذف می‌کند، حتی اگر در حالت اجرا باشد.

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

docker container rm my-container1 my-container2

در این مثال کانتینرهای "my-container1" و"my-container2 "را به‌طور کامل حذف می‌کند.

 

برای جدا کردن کانتینر در داکر از چه دستوری استفاده می‌شود؟

برای جدا کردن یک کانتینر در داکر از دستور docker container detach یا docker container stop استفاده می‌شود. این دستورها به شما اجازه می‌دهند کانتینر را از حالت اجرا به حالت متوقف ((stopped منتقل کنید. دستور docker container detach و docker container stop هر دو به نحوه‌ای کانتینر را از حالت اجرا جدا می‌کنند؛ اما باید توجه داشته باشید که تفاوتی بین آن‌ها وجود دارد. دستور docker container detach از صفحه‌بندی نرمال استفاده می‌کند و کانتینر را از حالت اجرا به حالت متوقف منتقل می‌کند. این دستور به شکل زیر استفاده می‌شود:

docker container detach [OPTIONS] CONTAINER [CONTAINER...]

به‌عنوان‌مثال، برای جدا کردن یک کانتینر با نام یا شناسه "my-container" می‌توانید از دستور زیر استفاده کنید:

docker container detach my-container

 

دستور docker container stop همچنین کانتینر را از حالت اجرا به حالت متوقف منتقل می‌کند؛ اما با استفاده از این دستور، Docker ابتدا سیگنال SIGTERM را به کانتینر ارسال می‌کند تا اجازه دهد فرآیندهای در حال اجرا درون کانتینر اجرای خود را به پایان برسانند. درصورتی‌که کانتینر پس از گذشت مدت‌زمان مشخصی (به‌طور پیش‌فرض 10 ثانیه) به‌صورت خودکار متوقف نشود، سیگنال SIGKILL ارسال می‌شود تا کانتینر را به‌اجبار متوقف کند. دستور docker container stop به شکل زیر استفاده می‌شود:

docker container stop [OPTIONS] CONTAINER [CONTAINER...]

به‌عنوان‌مثال برای جدا کردن یک کانتینر با نام یا شناسه "my-container" می‌توانید از دستور زیر استفاده کنید.

docker container stop my-container

از توضیحات فوق می‌توان نتیجه گرفت که استفاده از دستور docker container stop برای جدا کردن کانتینر بهتر است؛ زیرا داکر ابتدا سیگنال SIGTERM را ارسال می‌کند و به کانتینر زمان می‌دهد تا فرآیندهای در حال اجرا خود را به پایان برساند و سپس در صورت لزوم سیگنال SIGKILL را ارسال می‌کند تا کانتینر را متوقف کند.

دستورات داکر

چگونه می‌توان محتوا را از کانتینرها در سیستم فایل و بالعکس کپی کرد؟

برای کپی کردن محتوا به داخل یک کانتینر داکر از دستور docker cp استفاده می‌شود؛ و برای کپی کردن محتوا از داخل یک کانتینر به سیستم فایل میزبان، نیز از همین دستور استفاده می‌شود. برای کپی کردن محتوا به داخل یک کانتینر، دستور docker cp به شکل زیر استفاده می‌شود:

docker cp [OPTIONS] SOURCE_PATH CONTAINER:DEST_PATH

در خط کد بالا:

OPTIONS شامل پارامترها و گزینه‌های مختلفی است که می‌توانید برای تنظیمات کپی استفاده کنید. برای مثال، گزینه -r مشابه با دستور cp در سیستم‌عامل لینوکس است و به شما امکان می‌دهد دایرکتوری‌ها را به‌صورت بازگشتی کپی کنید.

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

CONTAINER نام یا شناسه کانتینر مورد نظر است.

DEST_PATH مسیر مقصد درون کانتینر است که می‌خواهید محتوا را به آن کپی کنید.

به‌عنوان‌مثال برای کپی کردن فایل با نام "file.txt" از سیستم فایل میزبان به داخل کانتینر با نام یا شناسه"my-container" و مسیر مقصد /path/to/destination می‌توانید از دستور زیر استفاده کنید:

docker cp file.txt my-container:/path/to/destination

برای کپی کردن محتوا از داخل یک کانتینر به سیستم فایل میزبان، نیز از همین دستور استفاده می‌شود. در این حالت، SOURCE_PATH و DEST_PATH جابه‌جا می‌شوند. به‌عنوان‌مثال برای کپی کردن فایل با نام "file.txt "از داخل کانتینر با نام یا شناسه" "my-container و مسیر فایل path/to/source به سیستم فایل میزبان، می‌توانید از دستور زیر استفاده کنید:

 

docker cp my-container:/path/to/source/file.txt /path/to/destination

 

دستور فوق فایل "file.txt" را از داخل کانتینر به مسیر"/path/to/destination" در سیستم فایل میزبان کپی می‌کند. توجه داشته باشید که در هر دو حالت، مسیرهای وارد شده باید به‌صورت مطلق (absolute path ) بیان شوند.

 

برای لیست کردن تمام تصاویر داکر از چه دستوری استفاده می‌شود؟

برای لیست کردن تمام تصاویر (images) موجود در داکر دستور docker image ls یا docker images استفاده می‌شود. هردو دستور نتیجه مشابهی را نمایش می‌دهند. دستور docker image ls به شکل زیر استفاده می‌شود:

docker image ls [OPTIONS] [REPOSITORY: [TAG]]

دستور docker images نیز به شکل زیر استفاده می‌شود:

docker images [OPTIONS] [REPOSITORY: [TAG]]

در کد بالا:

OPTIONS شامل پارامترها و گزینه‌های مختلفی است که می‌توانید برای تنظیمات نمایش تصاویر استفاده کنید. برای مثال گزینه -a یا -all تمام تصاویر را نمایش می‌دهد. حتی تصاویر میانی (intermediate images) را هم که توسط لایه‌های دیگری استفاده می‌شوند.

REPOSITORY نام مخزن (repository) مورد نظر است. با استفاده از این پارامتر، می‌توانید تصاویر را بر اساس نام مخزن فیلتر کنید.

TAG برچسب (tag) تصویر است. با استفاده از این پارامتر، می‌توانید تصاویر را بر اساس برچسب فیلتر کنید.

به‌عنوان‌مثال برای لیست کردن تمام تصاویر موجود در داکر می‌توانید از دستور زیر استفاده کنید:

docker image ls

یا:

docker images

این دستورها فهرستی از تصاویر Docker را به همراه اطلاعات مربوطه شامل نام مخزن، برچسب، شناسه (ID) تصویر، حجم و تاریخ ساخت را نمایش می‌دهند.

 

برای حذف تصاویر داکر از چه دستوری استفاده می‌شود؟

برای حذف تصاویر (images) در این پلتفرم می‌توانید از دستور docker image rm استفاده کنید. این دستور به شکل زیر عمل می‌کند:

docker image rm [OPTIONS] IMAGE [IMAGE...]

OPTIONS شامل پارامترها و گزینه‌های مختلفی است که می‌توانید برای تنظیمات حذف تصاویر استفاده کنید. برای مثال گزینه -f یا -force به شما اجازه می‌دهد تصاویر را به‌صورت اجباری حذف کنید و درصورتی‌که تصویر در حال استفاده توسط کانتینر یا سرویس دیگری باشد، آن را از حالت فعال خارج کنید.

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

به‌عنوان‌مثال برای حذف یک تصویر با نام یا شناسه "my-image" می‌توانید از دستور زیر استفاده کنید:

docker image rm my-image

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

docker image rm image1 image2 image3

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

 

نتیجه‌گیری

به‌طورکلی می‌توانیم بگوییم که دستورات پرکاربرد در داکر می‌توانند به شما در مدیریت و اجرای برنامه‌ها در محیط‌های مجازی کمک کنند. در این مقاله به معرفی و توضیح مختصری از برخی از دستورات پرکاربرد در این پلتفرم پرداختیم. این دستورات شامل docker run، docker build، docker pull، docker push، docker stop، docker rm، docker rmi، docker exec و docker logs بودند.

سوالات متداول

چگونه یک کانتینر Docker را اجرا کنیم؟

جواب: از دستور docker run برای اجرای یک کانتینر Docker استفاده کنید. مثلاً docker run image-name

چگونه تصویر داکر را از مخزن (repository) دریافت کنیم؟

از دستور docker pull برای دریافت تصویر Docker از مخزن استفاده کنید. برای مثال docker pull image-name

چگونه یک تصویر Docker را حذف کنیم؟

از دستور docker image rm برای حذف تصویر Docker استفاده کنید. برای مثال docker image rm image-name

چگونه یک کانتینر داکر را متوقف کنیم؟

از دستور docker stop برای متوقف کردن یک کانتینر استفاده کنید. برای مثال docker stop container-name

چگونه لاگ‌های یک کانتینر را مشاهده کنیم؟

از دستور docker logs برای مشاهده لاگ‌های یک کانتینر استفاده کنید. برای مثال docker logs container-name

چگونه یک کانتینر Docker را حذف کنیم؟

از دستور docker rm برای حذف یک کانتینر استفاده کنید. برای مثال docker rm container-name

چگونه یک تصویر را بسازیم و آن را به مخزن داکر آپلود کنیم؟

 با دستور docker build تصویر را بسازید و با دستور docker push آن را به مخزن آپلود کنید.

author
Mina seyfollahzadeh- نویسنده

149
A
A