خبر و ترفند روز

خبر و ترفند های روز را اینجا بخوانید!

Docker تا زمانی که این هفت فرمان ترمینال را یاد نگیرید، پیچیده به نظر می‌رسد

داکر پیچیده به نظر می‌آید تا زمانی که این هفت فرمان ترمینال را بیاموزید.
Docker در نگاه اول می‌تواند ترس‌انگیز باشد، اما این هفت فرمان رموز این سکوی کاری را می‌گشایند و در عیب‌یابی کمک می‌کنند.

اولین باری که خواستم با Docker چیزی بسازم، کاملاً گیج‌کننده بود. با کانتینرها، ایمیج‌ها، ولوم‌ها، پورت‌ها، فایل‌های Compose و ترمینالی پر از فرمان روبه‌رو شدم و از خود پرسیدم: آیا برای استفاده از آن باید توسعه‌دهنده باشم؟

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

docker pull

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

تصویری از فرآیند Docker pull که یک ایمیج Docker را از رجیستری دانلود می‌کند

ابتدا اصطلاحات Docker مرا سردرگم می‌کرد؛ «ایمیج» در این زمینه، نسخهٔ بسته‌بندی‌شدهٔ یک برنامه است که Docker از آن برای ساخت کانتینر استفاده می‌کند. این ایمیج‌ها را می‌توان با فرمان زیر از رجیستری دانلود کرد:

docker pull nginx This command downloads the Nginx image to your computer. While you haven’t started things rolling yet, you will have all the ingredients necessary to create a container. Docker will sometimes download a missing image automatically, so docker pull isn’t always required. However, it’s important to understand the relationship between images and containers, and the pull command makes this much clearer.
docker run

فرمان تبدیل ایمیج به کانتینر

Docker run یک کانتینر را از یک ایمیج Docker ایجاد می‌کند.

پس از دریافت ایمیج، می‌توانید با استفاده از آن کانتینر بسازید؛ برای نمونه:

docker run nginx A typical example might look like this:
docker run -d --name myserver -p 8080:80 nginx While this certainly looks more complicated, it makes more sense when broken down: -d runs the container in the background; --name gives it an easy-to-remember name, and -p connects a port on your computer to the port inside the container.

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

docker ps

فرمان نمایش وضعیت اجرا

این یکی از مفیدترین فرمان‌ها بود، چون گاهی نمی‌دانستم در Docker چه می‌گذرد. کار را با این فرمان شروع کنید:

docker ps This command displays all your currently running containers, along with useful information such as their names, status, images, and ports.

نسخه‌ای که معمولاً استفاده می‌کنم، docker ps -a است. گزینهٔ -a به Docker می‌گوید همهٔ کانتینرها، حتی کانتینرهای متوقف‌شده را نمایش دهد. این تفاوت مهم است؛ نمایش ندادن کانتینر در docker ps به این معنا نیست که ناپدید شده است؛ شاید فقط متوقف شده باشد.

docker logs

فرمان یافتن مشکلات

از docker logs برای نمایش خروجی یک کانتینر استفاده کنید.

حتی پس از ساخت چند برنامه، باز هم با مشکلاتی در Docker روبه‌رو می‌شوم و این فرمان یکی از مفیدترین ابزارها بوده است:

docker logs myserver Docker then displays the output generated by the container, revealing issues such as startup errors, configuration problems, connection failures, and other useful clues about what went wrong.

نسخهٔ مفید دیگر، docker logs -f myserver است؛ گزینهٔ -f امکان دنبال‌کردن زندهٔ خروجی را فراهم می‌کند. هر بار که در مرورگر با مشکلی روبه‌رو می‌شوم، بررسی لاگ‌ها معمولاً پاسخ را آشکار می‌کند.

مطلب مرتبط:   در اینجا آمده است که چگونه الگوهای دیجیتالی دست‌نویس روز من را تغییر داده‌اند

در این مثال‌ها، myserver نامِ جایگزین کانتینر شماست. آن را با نام واقعی کانتینری که می‌خواهید با آن کار کنید جایگزین کنید. اگر نام کانتینر را نمی‌دانید، docker ps را اجرا کنید و ستون NAMES را ببینید.

docker exec

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

Docker exec امکان اجرای فرمان‌ها را درون یک کانتینر Docker فراهم می‌کند.

اگر پس از بررسی لاگ‌ها هنوز علت مشکل روشن نیست، بررسی داخل خود کانتینر کمک می‌کند؛ این‌جاست که docker exec به کار می‌آید. نمونه:

docker exec -it myserver sh The -i and -t make the session interactive, while -sh launches the shell. It sounds complicated, but you’re basically just asking it to open a terminal inside the container. From there, you can inspect files and run commands, just as you would in a normal terminal.
docker stop

فرمان متوقف‌کردن کانتینر

Docker stop یک کانتینر در حال اجرا را متوقف می‌کند.

پس از پایان کار با کانتینر، لازم نیست آن را حذف کنید؛ کافی است با این فرمان متوقفش کنید:

docker stop myserver By doing so, you shut down the running container, but it stays on your system. This comes in handy when I am experimenting with Docker and don’t need the application running. I can easily start the container running again, without having to go through the motions of recreating it.

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

docker rm

فرمان حذف کانتینر

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

اگر مطمئنید دیگر به کانتینر نیاز ندارید، می‌توانید با این فرمان آن را حذف کنید:

docker rm myserver If the container is still running, you’ll likely have to stop it first, using docker stop myserver . Your container is then removed, but the image remains. Understanding how these elements are separate removed much of the initial confusion surrounding Docker.

لازم نیست متخصص Docker باشید

بزرگ‌ترین درسی که از Docker آموختم این است که نیازی به حفظ‌کردن فرمان‌های فراوان نیست؛ کافی است بدانید هر فرمان چه کاری انجام می‌دهد. روند کار ساده است: یک ایمیج دریافت می‌کنید، با آن کانتینر می‌سازید، وضعیت اجرای آن را بررسی می‌کنید، در صورت نیاز عیب‌یابی می‌کنید و در نهایت آن را متوقف یا حذف می‌کنید.

مطلب مرتبط:   ابزار جدید هوش مصنوعی گوگل اسناد خسته کننده را به ویدیوهای پر زرق و برق در محل کار تبدیل می کند

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

منبع: این مطلب ترجمه و بومی‌سازی مقاله‌ای از MakeUseOf به قلم Jack Mitchell است. مشاهده مقاله اصلی