چگونه به شل کانتینر داکر وارد شوم؟
برای ورود به شل یک کانتینر و مشاهده دایرکتوریها و فایلها، بهترین گزینه استفاده از دستور docker exec است. این دستور به شما اجازه میدهد تا یک فرمان دلخواه را درون کانتینر در حال اجرا، اجرا کنید. به عنوان مثال، برای ورود به شل یک کانتینر، میتوانید دستورات زیر را اجرا کنید:
docker exec -it <container_name> sh
یا اگر کانتینر شما /bin/bash را دارد:
docker exec -it <container_name> /bin/bash
در اینجا <container_name> نام یا شناسه کانتینر مورد نظر است که میتوانید با اجرای docker ps آن را پیدا کنید. گزینههای -i و -t به شما امکان میدهند تا یک شل تعاملی ایجاد کنید و این قابلیت به شما اجازه میدهد تا با فرمانها به راحتی درون کانتینر کار کنید.
اگر شما از docker-compose استفاده میکنید، میتوانید به سادگی از دستور docker-compose exec استفاده کنید که به شما امکانات مشابهی را میدهد و به صورت پیشفرض رفتار -i و -t را دارد. به عنوان مثال:
docker-compose exec <service_name> sh
توجه داشته باشید که docker exec فقط بر روی کانتینرهای در حال اجرا کار میکند. در صورتی که کانتینر شما در حال اجرا نیست، میتوانید از دستور docker run استفاده کنید:
docker run -it --entrypoint /bin/bash <image_name>
در نهایت، در حالی که برخی کاربران به دنبال استفاده از SSH در کانتینرها هستند، این روش به شدت توصیه نمیشود و استفاده از docker exec برای ورود به ارتباط با کانتینرهای داکر مرسوم تر و مناسب تر است.