| DOCKER(1) | Docker User Manuals | DOCKER(1) |
نام (NAME)
docker-container-exec - اجرای یک دستور در یک کانتینر در حال اجرا
خلاصه دستور (SYNOPSIS)
docker container exec [OPTIONS] CONTAINER COMMAND [ARG...]
شرح (DESCRIPTION)
اجرای یک پردازه در یک کانتینر در حال اجرا.
دستوری که با استفاده از docker exec شروع میشود، تنها زمانی اجرا خواهد شد که پردازه اصلی کانتینر (PID 1) در حال اجرا باشد و در صورت راهاندازی مجدد کانتینر، مجدداً راهاندازی نخواهد شد.
اگر کانتینر در حالت مکث (paused) باشد، دستور docker exec تا زمان خروج کانتینر از حالت مکث صبر کرده و سپس اجرا میشود.
قابلیتها (CAPABILITIES)
گزینه privileged قابلیتهای گسترشیافته لینوکس ⟨https://man7.org/linux/man-pages/man7/capabilities.7.html⟩ را هنگام اجرا در یک کانتینر به پردازه اعطا میکند.
بدون این فلگ، پردازهای که توسط docker exec در یک کانتینر در حال اجرا اجرا میشود، دارای همان قابلیتهای کانتینر است که ممکن است محدود باشند. برای اعطای تمام قابلیتها به پردازه، --privileged را تنظیم کنید.
کاربر (USER)
گزینه user نام کاربری یا UID مورد استفاده و در صورت تمایل نام گروه یا GID را برای دستور مشخصشده تعیین میکند.
مثالهای زیر همگی معتبر هستند:
--user [user | user:group | uid | uid:gid | user:gid | uid:group ]
بدون این آرگومان، دستور بهصورت root در کانتینر اجرا خواهد شد.
وضعیت خروج (EXIT STATUS)
کد خروج از docker exec اطلاعاتی درباره علت شکست کانتینر در اجرای دستور یا علت خروج آن ارائه میدهد. هنگامی که docker exec با یک کد غیرصفر خارج میشود، کدهای خروج از استاندارد chroot پیروی میکنند، به موارد زیر نگاه کنید:
126 اگر contained command قابل فراخوانی نباشد
$ docker exec busybox /etc; echo $? # exec: "/etc": permission denied docker: Error response from daemon: Contained command could not be invoked 126
127 اگر contained command پیدا نشود
$ docker exec busybox foo; echo $? # exec: "foo": executable file not found in $PATH docker: Error response from daemon: Contained command not found or does not exist 127
در غیر این صورت، Exit code مربوط به contained command
$ docker exec busybox /bin/sh -c 'exit 3' # 3
گزینهها (OPTIONS)
-d, --detach[=false] حالت تفکیکشده (Detached): اجرای دستور در پسزمینه
--detach-keys="" بازنویسی توالی کلیدها برای جدا شدن از کانتینر
-e, --env= تنظیم متغیرهای محیطی
--env-file= خواندن یک فایل از متغیرهای محیطی
-i, --interactive[=false] باز نگه داشتن STDIN حتی در صورت متصل نبودن
--privileged[=false] اعطای دسترسیهای گسترشیافته به دستور
-t, --tty[=false] تخصیص یک شبه TTY (pseudo-TTY)
-u, --user="" نام کاربری یا UID (قالب: "[:]")
-w, --workdir="" دایرکتوری کاری درون کانتینر
ببینید (SEE ALSO)
| Aug 2026 | Docker Community |