در مثال قبل با دستور docker exec به یک shell session در داخل یک کانتیر متصل شدیم و دستوراتی را اجرا کردیم. دستور docker exec برای اتصال سریع به کانتینر و debugging ، troubleshooting و درک عملکرد کانتینر بسیار مناسب است.
یادتان باشد که عمر یک کانتینر تنها به primary process در حال اجرای داخل آن بستگی دارد. زمانی که primary process به اتمام میرسد و یا خارج می شود، کانتینر نیز متوقف می شود. برای دسترسی به این primary process به جای دستور docker exec از دستور docker attach استفاده می کنیم.
زمانی که از docker attach استفاده می کنیم، دستری ما مستقیما به primary process در حال اجرا برقرار می شود. اگر این پردازش تعاملی ( interactive ) باشد، مثل Bash یا Bourne یا powershell میتوانیم دستورات خود را مستقیما اجرا کنیم(مشابه docker exec ). ولی تفاوت این دستور با دستور docker exec در این است که با حفظ کارکرد، مانند یک Session به primary process متصل میشویم و به راحتی میتوانیم اتصال خود را قطع و وصل کنیم. به مثال بعدی دقت کنید!