'\" t .nh .TH podman 1 .SH "نام (NAME)" podman \- ابزار ساده برای مدیریت پادها، کانتینرها و ایمیج‌ها .SH "خلاصه دستور (SYNOPSIS)" \fBpodman\fP [\fIگزینه‌ها\fP] \fIدستور\fP .SH "توضیحات (DESCRIPTION)" پودمن (\fBPodman\fR یا مدیر پاد) یک موتور کانتینر تمام‌عیار و ابزاری ساده و بدون دیمن (Daemonless) است. پودمن یک خط فرمان مشابه Docker-CLI ارائه می‌دهد که مهاجرت از سایر موتورهای کانتینر را تسهیل کرده و امکان مدیریت پادها، کانتینرها و ایمیج‌ها را فراهم می‌سازد. به بیان ساده: \fBalias docker=podman\fR\&. بیشتر دستورات پودمن می‌توانند به عنوان یک کاربر عادی و بدون نیاز به امتیازات ویژه اجرا شوند. .PP پودمن در ساختار داخلی خود از \fBBuildah(1)\fR برای ساخت ایمیج‌های کانتینر استفاده می‌کند. هر دو ابزار فضای ذخیره‌سازی ایمیج (و نه کانتینر) مشترک دارند، بنابراین هر یک می‌توانند از ایمیج‌های ساخته‌شده توسط دیگری استفاده کرده یا آن‌ها را دستکاری کنند (اما کانتینرها را نه). .PP تنظیمات پیش‌فرض برای گزینه‌ها در \fBcontainers.conf\fR\& تعریف شده‌اند. بیشتر تنظیمات اتصالات از راه دور (Remote) از فایل containers.conf سرور استفاده می‌کنند، مگر مواردی که در صفحات راهنما مستند شده باشد. .PP برای مدیریت کانتینرها، پادها، ولوم‌ها، شبکه‌ها و ایمیج‌ها به صورت اعلانی از طریق systemd، از فایل‌های quadlet استفاده کنید. به \fBpodman-quadlet\fP(1) و \fBpodman-systemd.unit\fP(5) مراجعه کنید. .PP \fBpodman [گزینه‌های عمومی]\fP .SH "گزینه‌های عمومی (GLOBAL OPTIONS)" .SS \fB--cdi-spec-dir\fP=\fIpath\fP مسیر دایرکتوری مشخصات CDI (می‌تواند چندین بار مشخص شود). مسیر پیش‌فرض \fB/etc/cdi\fR\& است. .SS \fB--cgroup-manager\fP=\fImanager\fP مدیر CGroup مورد استفاده برای cgroupهای کانتینر. مقادیر پشتیبانی‌شده \fBcgroupfs\fP یا \fBsystemd\fP\& هستند. مقدار پیش‌فرض \fIsystemd\fP است مگر اینکه در فایل containers.conf بازنویسی شده باشد. .PP نکته: تنظیم این فلگ می‌تواند در هنگام فراخوانی برای کانتینرهایی که قبلاً توسط نوع دیگری از مدیر CGroup ایجاد شده‌اند، باعث خرابی برخی دستورات شود. .SS \fB--config\fP محل فایل پیکربندی. عمدتاً برای سازگاری با docker بوده و تنها بخش‌های احراز هویت پیکربندی پشتیبانی می‌شوند. .SS \fB--conmon\fP مسیر باینری conmon (مسیر پیش‌فرض در \fBcontainers.conf\fR پیکربندی شده است). .SS \fB--connection\fP, \fB-c\fP اتصال مورد استفاده برای پودمن از راه دور، از جمله ماشین‌های مک و ویندوز (به استثنای WSL2) (اتصال پیش‌فرض در \fBcontainers.conf\fR پیکربندی شده است). تنظیم این گزینه، فلگ \fB--remote\fP را به true تغییر می‌دهد. اتصالات از راه دور به طور پیش‌فرض از containers.conf محلی استفاده می‌کنند. .SS \fB--events-backend\fP=\fItype\fP بک‌اند مورد استفاده برای ذخیره‌سازی رویدادها. مقادیر مجاز عبارتند از \fBfile\fP، \fBjournald\fP و \fBnone\fR\&. هنگامی که \fIfile\fP مشخص شود، رویدادها در مسیر \fB/events/events.log\fR ذخیره می‌شوند (توضیحات \fB--tmpdir\fP در زیر را ببینید). .SS \fB--help\fP, \fB-h\fP چاپ راهنمای نحوه استفاده از دستور. .SS \fB--hooks-dir\fP=\fIpath\fP هر فایل \fB*.json\fR در این مسیر، یک هوک (Hook) را برای کانتینرهای Podman پیکربندی می‌کند. برای جزئیات بیشتر درباره نحو فایل‌های JSON و معناشناسی تزریق هوک، به \fBoci-hooks(5)\fR\& مراجعه کنید. در حال حاضر Podman و libpod از هر دو اسکیما هوک نسخه 1.0.0 و 0.1.0 پشتیبانی می‌کنند، اگرچه اسکیمای 0.1.0 منسوخ شده است. .PP این گزینه می‌تواند چندین بار مشخص شود؛ مسیرهای گزینه‌های بعدی اولویت بالاتری دارند (در \fBoci-hooks(5)\fR تقدم دایرکتوری‌ها بررسی شده است). .PP برای شرایط انوتیشن (Annotation)، libpod از هرگونه انوتیشن تنظیم‌شده در پیکربندی OCI تولیدشده استفاده می‌کند. .PP برای شرایط bind-mount، تنها اتصالاتی که صراحتاً توسط فراخواننده از طریق \fB--volume\fR درخواست شده باشند در نظر گرفته می‌شوند. اتصالات bind که libpod به صورت پیش‌فرض درج می‌کند (مانند \fB/dev/shm\fR) در نظر گرفته نمی‌شوند. .PP اگر \fB--hooks-dir\fR برای فراخواننده‌های root تنظیم نشده باشد، Podman و libpod در حال حاضر به ترتیب اولویت افزایشی از پیش‌فرض‌های \fB/usr/share/containers/oci/hooks.d\fR و \fB/etc/containers/oci/hooks.d\fR استفاده می‌کنند. استفاده از این پیش‌فرض‌ها منسوخ شده است. به تنظیم صریح \fB--hooks-dir\fR\& مهاجرت کنید. .PP در حال حاضر Podman و libpod از یک حالت اضافی به نام \fBprecreate\fR پشتیبانی می‌کنند که قبل از عملیات \fBcreate\fR ران‌تایم فراخوانی می‌شود. بر خلاف سایر مراحل که وضعیت کانتینر را روی ورودی استاندارد خود دریافت می‌کنند، هوک‌های \fBprecreate\fR پیکربندی پیشنهادی ران‌تایم را روی ورودی استاندارد دریافت می‌کنند. آنها می‌توانند آن پیکربندی را به صلاحدید خود تغییر دهند و شکل تغییریافته را در خروجی استاندارد بنویسند. .PP \fBهشدار\fP: هوک \fBprecreate\fR امکان اعمال تغییرات قدرتمندی مانند افزودن مانت‌های اضافی به پیکربندی ران‌تایم را فراهم می‌کند. این قدرت همچنین به راحتی می‌تواند باعث خراب شدن تنظیمات شود. پیش از گزارش خطاهای libpod، کانتینر را با هوک‌های \fBprecreate\fR غیرفعال اجرا کنید تا ببینید آیا مشکل ناشی از یکی از این هوک‌هاست یا خیر. .SS \fB--identity\fP=\fIpath\fP مسیر فایل هویت SSH (کلید خصوصی). اگر فایل هویت رمزگذاری شده باشد، پودمن عبارت عبور (passphrase) را از کاربر درخواست می‌کند. اگر هیچ فایل هویتی مشخص نشده باشد و هیچ کاربری ارائه نگردد، پودمن به طور پیش‌فرض از کاربری که دستور پودمن را اجرا می‌کند استفاده خواهد کرد. پودمن گذرواژه ورود به سرور ریموت را از کاربر درخواست می‌کند. .PP ترتیب تقدم تعیین مقدار هویت: - مقدار خط فرمان - متغیر محیطی \fBCONTAINER_SSHKEY\fR، در صورتی که \fBCONTAINER_HOST\fR یافت شود - فایل \fBcontainers.conf\fR اتصالات ریموت به طور پیش‌فرض از containers.conf محلی استفاده می‌کنند. .SS \fB--imagestore\fP=\fIpath\fP مسیر ذخیره‌ساز ایمیج (imagestore) که ایمیج‌ها در آن ذخیره می‌شوند. به طور پیش‌فرض، کتابخانه ذخیره‌سازی تمامی ایمیج‌ها را در graphroot ذخیره می‌کند، اما اگر یک imagestore ارائه شود، کتابخانه ذخیره‌سازی ایمیج‌های تازه‌دریافت‌شده را در imagestore مشخص‌شده ذخیره کرده و از graphroot برای سایر موارد استفاده خواهد کرد. اگر کاربر از درایور overlay استفاده کند، ایمیج‌هایی که پیش از این بخشی از graphroot بوده‌اند همچنان در دسترس خواهند بود. .PP این گزینه تنظیم \fIimagestore\fP در \fBcontainers-storage.conf(5)\fR را بازنویسی می‌کند؛ برای جزئیات بیشتر به \fBcontainers-storage.conf(5)\fR مراجعه فرمایید. .SS \fB--log-level\fP=\fIlevel\fP ثبت پیام‌های وقایع در سطح مشخص‌شده و بالاتر از آن: \fBdebug\fP، \fBinfo\fP، \fBwarn\fP، \fBerror\fP، \fBfatal\fP یا \fBpanic\fP (پیش‌فرض: \fIwarn\fP). .SS \fB--module\fP=\fIpath\fP بارگذاری ماژول مشخص‌شده از \fBcontainers.conf(5)\fR\&. می‌تواند یک مسیر مطلق یا نسبی باشد. لطفاً برای جزئیات به \fBcontainers.conf(5)\fR مراجعه فرمایید. .PP این فلگ در کلاینت ریموت، از جمله در ماشین‌های مک و ویندوز (به استثنای WSL2) پشتیبانی نمی‌شود. همچنین توجه داشته باشید که این فلگ یک فلگ سطح ریشه (اصلی) است و باید قبل از هر زیردستور Podman مشخص شود. .SS \fB--network-config-dir\fP=\fIdirectory\fP مسیر دایرکتوری حاوی فایل‌های پیکربندی شبکه. مقدار پیش‌فرض در حالت کاربر ریشه "/etc/containers/networks" و در حالت بدون ریشه "$graphroot/networks" است. .SS \fB--out\fP=\fIpath\fP تغییر مسیر خروجی پودمن به مسیر مشخص‌شده، بدون اینکه بر خروجی کانتینر یا لاگ‌های آن تأثیری بگذارد. از این پارامتر می‌توان برای ثبت مستقیم خروجی هر یک از دستورات پودمن در یک فایل استفاده کرد؛ همچنین با مشخص کردن dev/null/ به عنوان مسیر، خروجی پودمن مسدود می‌شود. برای غیرفعال‌سازی صریح ثبت وقایع کانتینر، باید از گزینه \fB--log-driver\fP استفاده شود. .SS \fB--remote\fP, \fB-r\fP هنگامی که true باشد، دسترسی به سرویس Podman به صورت ریموت خواهد بود. مقدار پیش‌فرض false است. تنظیمات را می‌توان در فایل containers.conf تغییر داد. اگر متغیر محیطی CONTAINER_HOST تنظیم شده باشد، گزینه \fB--remote\fP به طور پیش‌فرض true خواهد بود. .SS \fB--root\fP=\fIvalue\fP دایرکتوری ریشه ذخیره‌سازی که داده‌ها، از جمله ایمیج‌ها، در آن ذخیره می‌شوند (پیش‌فرض: "/var/lib/containers/storage" برای UID 0، و "$HOME/.local/share/containers/storage" برای سایر کاربران). دایرکتوری ریشه پیش‌فرض در \fBcontainers-storage.conf(5)\fR\& پیکربندی شده است. .PP این گزینه باعث نادیده گرفته شدن تنظیمات \fBstorage.options.\fR در \fBcontainers-storage.conf(5)\fR و متغیر محیطی \fBSTORAGE_OPTS\fR می‌شود. کاربر باید گزینه‌های اضافی را از طریق فلگ \fB--storage-opt\fR مشخص کند. .SS \fB--runroot\fP=\fIvalue\fP دایرکتوری وضعیت ذخیره‌سازی که تمام اطلاعات وضعیت در آن نگهداری می‌شود (پیش‌فرض: "/run/containers/storage" برای UID 0، و "/run/user/$UID/run" برای سایر کاربران). دایرکتوری وضعیت پیش‌فرض در \fBcontainers-storage.conf(5)\fR\& پیکربندی شده است. .SS \fB--runtime\fP=\fIvalue\fP نام ران‌تایم OCI همان‌طور که در containers.conf مشخص شده یا مسیر مطلق به باینری سازگار با OCI که برای اجرای کانتینرها استفاده می‌شود. .SS \fB--runtime-flag\fP=\fIflag\fP فلگ‌های عمومی را به ران‌تایم کانتینر اضافه می‌کند. برای مشاهده فهرست فلگ‌های پشتیبانی‌شده، لطفاً به صفحات راهنمای ران‌تایم کانتینر انتخاب‌شده مراجعه کنید (\fBrunc\fR ران‌تایم پیش‌فرض است و صفحه راهنمای آن \fBrunc(8)\fR\& می‌باشد؛ هنگامی که ماشین برای cgroup V2 پیکربندی شده باشد، ران‌تایم پیش‌فرض \fBcrun\fR است که صفحه راهنمای آن \fBcrun(8)\fR\& می‌باشد). .PP فلگ‌های پیش‌فرض ران‌تایم را می‌توان در containers.conf اضافه کرد. .PP نکته: پیشوند \fB--\fR را همراه با فلگ ارسال نکنید. به عنوان مثال برای ارسال فلگ \fB--log-format json\fR در runc به podman build، گزینه ارسالی می‌تواند به صورت \fB--runtime-flag log-format=json\fR\& باشد. .SS \fB--ssh\fP=\fIvalue\fP این گزینه به کاربر امکان می‌دهد حالت SSH را تغییر دهد؛ به این معنی که به جای استفاده از حالت پیش‌فرض \fBgolang\fP، می‌توان از \fB--ssh=native\fP برای استفاده از باینری ssh نصب‌شده روی سیستم و فایل کانفیگ اعلام‌شده در containers.conf استفاده کرد. .SS \fB--storage-driver\fP=\fIvalue\fP درایور ذخیره‌سازی. درایور ذخیره‌سازی پیش‌فرض در \fBcontainers-storage.conf(5)\fR\& پیکربندی شده است. متغیر محیطی \fBSTORAGE_DRIVER\fR مقدار پیش‌فرض را بازنویسی می‌کند. درایوری که صراحتاً با --storage-driver تعیین شود بر همه چیز اولویت دارد. .PP این گزینه باعث نادیده گرفته شدن تنظیمات \fBstorage.options.\fR در \fBcontainers-storage.conf(5)\fR و متغیر محیطی \fBSTORAGE_OPTS\fR می‌شود. کاربر باید گزینه‌های اضافی را از طریق فلگ \fB--storage-opt\fR مشخص کند. .SS \fB--storage-opt\fP=\fIvalue\fP تعیین گزینه‌های درایور ذخیره‌سازی. گزینه‌های پیش‌فرض درایور ذخیره‌سازی در \fBcontainers-storage.conf(5)\fR\& پیکربندی شده‌اند. متغیر محیطی \fBSTORAGE_OPTS\fR بر پیش‌فرض‌ها ارجحیت دارد. گزینه‌های مشخص‌شده توسط --storage-opt بر همه چیز اولویت دارند. مقدار ""=storage-opt-- را تعیین کنید تا هیچ گزینه ذخیره‌سازی اعمال نشود. .PP گزینه‌های \fB--root\fR و \fB--storage-driver\fR گزینه‌های ذخیره‌سازی پیش‌فرض را پاک کرده و تنظیمات درایور ذخیره‌سازی پیش‌فرض در \fBcontainers-storage.conf(5)\fR و متغیر محیطی \fBSTORAGE_OPTS\fR را نادیده می‌گیرند. .SS \fB--syslog\fP ارسال اطلاعات لاگ به syslog و همچنین کنسول (پیش‌فرض \fIfalse\fP). .PP در کلاینت‌های ریموت، از جمله ماشین‌های مک و ویندوز (به جز WSL2)، لاگ‌ها به فایل $HOME/.config/containers/podman.log هدایت می‌شوند. .SS \fB--tls-ca\fP=\fIpath\fP مسیر فایل PEM حاوی مجموعه گواهی‌های مرجع صدور گواهی (CA) برای اعتبارسنجی گواهی سرور. .SS \fB--tls-cert\fP=\fIpath\fP مسیر فایل PEM حاوی گواهی کلاینت TLS برای ارائه به سرور. گزینه \fB--tls-key\fR نیز باید ارائه شود. .SS \fB--tls-details\fP=\fIpath\fP مسیر یک فایل \fBcontainers-tls-details.yaml(5)\fR که رفتار TLS را در سراسر برنامه تحت تأثیر قرار می‌دهد. .PP در صورت عدم تنظیم، مقداری پیش‌فرض و معقول اعمال می‌شود که ممکن است در طول زمان تغییر کند (بسته به سیاست کلی سیستم، نسخه برنامه، نسخه زبان Go و موارد مشابه). .PP کاربران معمولاً نباید از این گزینه استفاده کنند مگر اینکه سازوکاری برای به‌روز نگه‌داشتن مداوم این پیکربندی داشته باشند. .SS \fB--tls-key\fP=\fIpath\fP مسیر فایل PEM حاوی کلید خصوصی منطبق با \fB--tls-cert\fR\&. گزینه \fB--tls-cert\fR نیز باید ارائه گردد. .SS \fB--tmpdir\fP=\fIpath\fP مسیر دایرکتوری موقت (tmp) برای محتوای ران‌تایم libpod. به طور پیش‌فرض در حالت بدون ریشه به \fB$XDG_RUNTIME_DIR/libpod/tmp\fR و در حالت ریشه به \fB/run/libpod/tmp\fR اشاره دارد. .PP نکته: tmpdir-- برای ذخیره‌سازی موقت ایمیج‌های بارگیری‌شده استفاده نمی‌شود. برای تغییر مکان موقت ذخیره‌سازی ایمیج‌های کانتینر بارگیری‌شده، از متغیر محیطی \fBTMPDIR\fR استفاده کنید. پودمن به طور پیش‌فرض از \fB/var/tmp\fR\& استفاده می‌کند. .SS \fB--transient-store\fP حالت ذخیره‌سازی موقت سراسری (Transient Storage) را فعال می‌کند که در آن تمام متادیتای کانتینرها در یک رسانه ناپایدار (یعنی در مکان تعیین‌شده توسط \fB--runroot\fR) ذخیره می‌شود. این حالت امکان راه‌اندازی سریع‌تر کانتینرها را فراهم کرده و همچنین شروع تمیز سیستم در هنگام بوت مجدد را پس از خاموش شدن‌های ناگهانی یا سایر مشکلات تضمین می‌کند. با این حال با مدل سنتی که کانتینرها در میان ریبوت‌ها باقی می‌مانند سازگار نیست. .PP تنها پایگاه‌داده Podman (متادیتای کانتینرها و ولوم‌ها) به صورت موقت ذخیره می‌شود. داده‌های ولوم روی دیسک تحت تأثیر قرار نمی‌گیرند و در میان راه‌اندازی‌های مجدد باقی می‌مانند. پس از راه‌اندازی مجدد، ولوم‌های قبلاً ایجادشده در دستور \fBpodman volume ls\fP نمایش داده نمی‌شوند زیرا رکوردهای دیتابیس آن‌ها از بین رفته است، اما داده‌های زیربنایی در دایرکتوری ذخیره‌سازی ولوم باقی خواهند ماند. اگر بعداً کانتینری ولومی با همان نام ایجاد کند، مجدداً از همان داده‌های موجود استفاده خواهد کرد. برای پاک‌سازی داده‌های باقی‌مانده ولوم‌هایی که دیگر توسط پایگاه‌داده ردیابی نمی‌شوند، از \fBpodman system prune --external\fP\& استفاده کنید. .PP این گزینه باید به طور پیوسته در تمام دستورات Podman استفاده شود و نباید با استفاده معمولی (غیرگذرا) در یک محیط ترکیب شود. .PP مقدار پیش‌فرض این حالت در \fBcontainers-storage.conf(5)\fR\& پیکربندی شده است. .SS \fB--url\fP=\fIvalue\fP آدرس URL برای دسترسی به سرویس پودمن (پیش‌فرض از \fBcontainers.conf\fR، در حالت بدون ریشه \fBunix:///run/user/$UID/podman/podman.sock\fR یا در حالت ریشه \fBunix:///run/podman/podman.sock\fR). تنظیم این گزینه سوئیچ \fB--remote\fP را به true تغییر می‌دهد. .IP \(bu 2 قالب \fBCONTAINER_HOST\fR به صورت \fB://[]@][:][]\fR است. .PP جزئیات: - \fBschema\fR یکی از موارد زیر است: * \fBssh\fR (پیش‌فرض): یک سوکت محلی unix(7) روی \fBhost\fR و \fBport\fR مشخص‌شده، قابل دسترسی از طریق SSH * \fBtcp\fR: اتصال TCP بدون رمزگذاری و بدون احراز هویت به \fBhost\fR و \fBport\fR مشخص‌شده * \fBunix\fR: یک سوکت محلی unix(7) در \fBpath\fR مشخص‌شده یا مسیر پیش‌فرض کاربر - مقدار \fBuser\fR به طور پیش‌فرض \fBroot\fR یا کاربر جاری در حال اجرا است (فقط در \fBssh\fR) - مقدار \fBpassword\fR هیچ پیش‌فرضی ندارد (فقط در \fBssh\fR) - مقدار \fBhost\fR الزامی است و آدرس IP یا نام ماشین ارائه‌دهنده سرویس Podman می‌باشد (\fBssh\fR و \fBtcp\fR) - مقدار \fBport\fR به طور پیش‌فرض 22 است (\fBssh\fR و \fBtcp\fR) - مقدار \fBpath\fR به طور پیش‌فرض \fB/run/podman/podman.sock\fR است، یا در صورت اجرای بدون ریشه برابر با \fB/run/user/$UID/podman/podman.sock\fR خواهد بود (\fBunix\fR)، یا باید صراحتاً مشخص شود (\fBssh\fR) .PP ترتیب تقدم تعیین مقدار URL: - مقدار خط فرمان - متغیر محیطی \fBCONTAINER_HOST\fR - جدول \fBengine.service_destinations\fR در فایل containers.conf به استثنای دایرکتوری /usr/share/containers - \fBunix:///run/podman/podman.sock\fR .PP اتصالات ریموت به طور پیش‌فرض از containers.conf محلی استفاده می‌کنند. .PP چند نمونه از مقادیر URL در قالب‌های معتبر: - \fBunix:///run/podman/podman.sock\fR - \fBunix:///run/user/$UID/podman/podman.sock\fR - \fBssh://notroot@localhost:22/run/user/$UID/podman/podman.sock\fR - \fBssh://root@localhost:22/run/podman/podman.sock\fR - \fBtcp://localhost:34451\fR - \fBtcp://127.0.0.1:34451\fR .SS \fB--version\fP, \fB-v\fP چاپ نسخه برنامه. .SS \fB--volumepath\fP=\fIvalue\fP دایرکتوری ولوم که اطلاعات ولوم‌های توکار در آن نگهداری می‌شود (پیش‌فرض: "/var/lib/containers/storage/volumes" برای UID 0 و "$HOME/.local/share/containers/storage/volumes" برای سایر کاربران). مسیر پیش‌فرض ولوم می‌تواند در \fBcontainers.conf\fR\& بازنویسی شود. .SH "متغیرهای محیطی (ENVIRONMENT VARIABLES)" پودمن می‌تواند متغیرهای محیطی را از بخش env جدول [engine] در containers.conf تنظیم کند. این متغیرها را می‌توان با ارسال متغیرهای محیطی پیش از دستورات \fBpodman\fR بازنویسی کرد. .SS \fBCONTAINERS_CONF\fP تنظیم مکان‌های پیش‌فرض فایل containers.conf. .SS \fBCONTAINERS_REGISTRIES_CONF\fP تنظیم مکان پیش‌فرض فایل registries.conf. .SS \fBCONTAINERS_STORAGE_CONF\fP تنظیم مکان پیش‌فرض فایل storage.conf. .SS \fBCONTAINER_CONNECTION\fP بازنویسی مقدار پیش‌فرض \fB--connection\fR برای دسترسی به سرویس پودمن. به طور خودکار گزینه --remote را فعال می‌کند. .SS \fBCONTAINER_HOST\fP تنظیم مقدار پیش‌فرض \fB--url\fR برای دسترسی به سرویس پودمن. به طور خودکار گزینه --remote را فعال می‌کند. .SS \fBCONTAINER_SSHKEY\fP تنظیم مقدار پیش‌فرض مسیر \fB--identity\fR به فایل کلید ssh مورد استفاده برای دسترسی به سرویس پودمن. .SS \fBPODMAN_CONNECTIONS_CONF\fP مسیر فایلی که اتصالات سیستم و فارم‌های ایجادشده با \fBpodman system connection add\fR و \fBpodman farm add\fR در آن ذخیره می‌شوند؛ به طور پیش‌فرض از \fB~/.config/containers/podman-connections.json\fR\& استفاده می‌کند. .SS \fBSTORAGE_DRIVER\fP تنظیم مقدار پیش‌فرض \fB--storage-driver\fR\&. .SS \fBSTORAGE_OPTS\fP تنظیم مقدار پیش‌فرض \fB--storage-opt\fR\&. گزینه‌های درایور ذخیره‌سازی را در \fBcontainers-storage.conf(5)\fR\& بازنویسی می‌کند. در صورت تنظیم گزینه‌های \fB--root\fR یا \fB--storage-driver\fR نادیده گرفته می‌شود. .SS \fBTMPDIR\fP تنظیم مکان ذخیره‌سازی موقت ایمیج‌های بارگیری‌شده کانتینر. پودمن به طور پیش‌فرض از \fB/var/tmp\fR\& استفاده می‌کند. .SS \fBXDG_CONFIG_HOME\fP در حالت بدون ریشه (Rootless)، فایل‌های پیکربندی در صورت مشخص بودن از \fBXDG_CONFIG_HOME\fR خوانده می‌شوند، در غیر این صورت در دایرکتوری خانگی کاربر تحت \fB$HOME/.config/containers\fR\& خوانده خواهند شد. .SS \fBXDG_DATA_HOME\fP در حالت بدون ریشه، در صورت مشخص بودن، ایمیج‌ها در \fBXDG_DATA_HOME\fR دریافت می‌شوند، در غیر این صورت در دایرکتوری خانگی کاربر تحت \fB$HOME/.local/share/containers/storage\fR\& قرار می‌گیرند. .SS \fBXDG_RUNTIME_DIR\fP در حالت بدون ریشه، داده‌های پیکربندی موقت در \fB${XDG_RUNTIME_DIR}/containers\fR\& ذخیره می‌شوند. .SS \fBPODMAN_NO_PAUSE_PROCESS\fP در حالت بدون ریشه، اگر روی مقداری غیر از "0" تنظیم شود، پودمن از فرایند مکث (pause process) استفاده نمی‌کند. هندل‌های فایل فضای نام ذخیره می‌شوند تا در صورت زنده بودن، امکان پیوستن مجدد به فضای نام کاربری و مانت موجود فراهم گردد. .SH "دسترسی از راه دور (REMOTE ACCESS)" دستور Podman را می‌توان با استفاده از فلگ \fB--remote\fR همراه با سرویس‌های ریموت استفاده کرد. اتصالات را می‌توان با استفاده از سوکت‌های دامنه یونیکس محلی، SSH یا مستقیماً به سوکت‌های TCP برقرار کرد. هنگام مشخص کردن فلگ podman --remote، فقط گزینه‌های عمومی \fB--url\fR، \fB--identity\fR، \fB--log-level\fR و \fB--connection\fR استفاده می‌شوند. .PP اطلاعات اتصال را می‌توان با استفاده از فایل containers.conf نیز مدیریت کرد. .SH "کدهای خروج (EXIT CODES)" کد خروج از \fBpodman\fR اطلاعاتی درباره علت عدم اجرای کانتینر یا دلیل خروج آن ارائه می‌دهد. هنگامی که دستورات \fBpodman\fR با یک کد غیرصفر خارج می‌شوند، کدهای خروج از استاندارد \fBchroot\fR پیروی می‌کنند، به شرح زیر: .PP \fB125\fP خطا مربوط به خود \fB\fIپودمن\fP\fP است: .EX $ podman run --foo busybox; echo $? Error: unknown flag: --foo 125 .EE .PP \fB126\fP یک \fIدستور کانتینر\fP اجرا شده و امکان فراخوانی آن \fIدستور\fP وجود ندارد: .EX $ podman run busybox /etc; echo $? Error: container_linux.go:346: starting container process caused "exec: \"/etc\": permission denied": OCI runtime error 126 .EE .PP \fB127\fP یک \fIدستور کانتینر\fP اجرا شده و آن \fIدستور\fP پیدا نمی‌شود: .EX $ podman run busybox foo; echo $? Error: container_linux.go:346: starting container process caused "exec: \"foo\": executable file not found in $PATH": OCI runtime error 127 .EE .PP \fBکد خروج\fP در غیر این صورت، \fBpodman\fR کد خروج \fIدستور کانتینر\fP را بازمی‌گرداند: .EX $ podman run busybox /bin/sh -c 'exit 3'; echo $? 3 .EE .SH "دستورات (COMMANDS)" .TS allbox; l l l l . \fBدستور\fP \fBتوضیحات\fP podman-artifact(1) مدیریت آرتیفکت‌های OCI. podman-attach(1) متصل شدن به یک کانتینر در حال اجرا. podman-auto-update(1) T{ به‌روزرسانی خودکار کانتینرها بر اساس سیاست به‌روزرسانی خودکار آن‌ها T} podman-build(1) T{ ساخت یک ایمیج کانتینر با استفاده از Containerfile. T} podman-farm(1) T{ توزیع ساخت ایمیج‌ها بین ماشین‌های پودمن برای معماری‌های مختلف T} podman-commit(1) T{ ایجاد ایمیج جدید بر اساس تغییرات اعمال‌شده در یک کانتینر. T} podman-completion(1) T{ تولید اسکریپت‌های تکمیل خودکار خط فرمان شل (Completion) T} podman-compose(1) T{ اجرای بارهای کاری Compose از طریق یک ارائه‌دهنده خارجی compose. T} podman-container(1) مدیریت کانتینرها. podman-cp(1) T{ کپی فایل‌ها/پوشه‌ها میان یک کانتینر و فایل‌سیستم محلی. T} podman-create(1) ایجاد یک کانتینر جدید. podman-diff(1) T{ بررسی تغییرات فایل‌سیستم یک کانتینر یا ایمیج. T} podman-events(1) نظارت بر رویدادهای پودمن. podman-exec(1) T{ اجرای یک دستور در یک کانتینر در حال اجرا. T} podman-export(1) T{ خروجی گرفتن از محتویات فایل‌سیستم کانتینر در قالب آرشیو tar. T} podman-generate(1) T{ تولید داده‌های ساختاریافته بر اساس کانتینرها، پادها یا ولوم‌ها. T} podman-healthcheck(1) T{ مدیریت بررسی‌های سلامت (Healthcheck) برای کانتینرها. T} podman-history(1) نمایش تاریخچه لایه‌های یک ایمیج. podman-image(1) مدیریت ایمیج‌ها. podman-images(1) فهرست کردن ایمیج‌ها در ذخیره‌ساز محلی. podman-import(1) T{ ایمپورت یک فایل tarball و ذخیره آن به عنوان ایمیج فایل‌سیستم. T} podman-info(1) T{ نمایش اطلاعات سیستم مربوط به پودمن. T} podman-init(1) T{ راه‌اندازی اولیه یک یا چند کانتینر. T} podman-inspect(1) T{ نمایش پیکربندی آرتیفکت، کانتینر، ایمیج، ولوم، شبکه یا پاد. T} podman-kill(1) T{ خاتمه دادن به فرایند اصلی در یک یا چند کانتینر. T} podman-load(1) T{ بارگذاری ایمیج(ها) از آرشیوهای tar، دایرکتوری‌ها یا نشانی‌های اینترنتی به حافظه ذخیره‌سازی کانتینر. T} podman-login(1) T{ ورود به یک رجیستری کانتینر. T} podman-logout(1) T{ خروج از یک رجیستری کانتینر. T} podman-logs(1) T{ نمایش لاگ‌های یک یا چند کانتینر. T} podman-machine(1) T{ مدیریت ماشین مجازی پودمن. T} podman-manifest(1) T{ ایجاد و دستکاری لیست‌های مانیفست و نمایه‌های ایمیج (Image Index). T} podman-mount(1) T{ مانت کردن فایل‌سیستم ریشه یک کانتینر فعال. T} podman-network(1) مدیریت شبکه‌های پودمن. podman-pause(1) مکث و متوقف کردن موقت یک یا چند کانتینر. podman-kube(1) T{ اجرا و پیاده‌سازی کانتینرها، پادها یا ولوم‌ها بر اساس فایل ورودی ساختاریافته کوبرنتیز. T} podman-pod(1) T{ ابزار مدیریت گروه‌های کانتینری تحت عنوان پاد (Pod). T} podman-port(1) T{ فهرست کردن نگاشت‌های پورت برای یک کانتینر. T} podman-ps(1) T{ نمایش اطلاعات مربوط به کانتینرها. T} podman-pull(1) دریافت (Pull) یک ایمیج از یک رجیستری. podman-push(1) T{ ارسال (Push) یک ایمیج، لیست مانیفست یا نمایه ایمیج از ذخیره‌ساز محلی به مقصدی دیگر. T} podman-quadlet(1) T{ امکان مدیریت فایل‌های کادلِت (Quadlets) را برای کاربران فراهم می‌کند. T} podman-rename(1) تغییر نام یک کانتینر موجود. podman-restart(1) T{ راه‌اندازی مجدد یک یا چند کانتینر. T} podman-rm(1) حذف یک یا چند کانتینر. podman-rmi(1) T{ حذف یک یا چند ایمیج ذخیره‌شده به صورت محلی. T} podman-run(1) T{ اجرای یک دستور در یک کانتینر جدید. T} podman-save(1) T{ ذخیره ایمیج(ها) در یک فایل آرشیو یا دایرکتوری. T} podman-search(1) T{ جستجوی یک ایمیج در یک رجیستری. T} podman-secret(1) مدیریت داده‌های محرمانه (Secrets) در پودمن. podman-start(1) شروع یک یا چند کانتینر. podman-stats(1) T{ نمایش جریان زنده آمارهای مصرف منابع یک یا چند کانتینر. T} podman-stop(1) T{ متوقف کردن یک یا چند کانتینر در حال اجرا. T} podman-system(1) مدیریت پودمن. podman-tag(1) T{ افزودن یک نام اضافی (تگ) به یک ایمیج محلی. T} podman-top(1) T{ نمایش فرایندهای در حال اجرای یک کانتینر. T} podman-unmount(1) T{ آزاد کردن مانت فایل‌سیستم ریشه یک کانتینر فعال. T} podman-unpause(1) T{ از سرگیری اجرای یک یا چند کانتینر مکث‌داده‌شده. T} podman-unshare(1) T{ اجرای یک دستور درون یک فضای نام کاربری تغییریافته. T} podman-untag(1) T{ حذف یک یا چند نام (تگ) از یک ایمیج ذخیره‌شده محلی. T} podman-update(1) T{ به‌روزرسانی پیکربندی یک کانتینر مشخص. T} podman-version(1) T{ نمایش اطلاعات نسخه پودمن. T} podman-volume(1) T{ ابزار ساده مدیریت ولوم‌ها (دیسک‌های داده). T} podman-wait(1) T{ انتظار برای توقف یک یا چند کانتینر و چاپ کدهای خروج آن‌ها. T} .TE .SH "فایل‌های پیکربندی (CONFIGURATION FILES)" \fBcontainers.conf\fP (\fB/usr/share/containers/containers.conf\fR, \fB/etc/containers/containers.conf\fR, \fB$HOME/.config/containers/containers.conf\fR) .PP پودمن پیش‌فرض‌های توکاری برای گزینه‌های خط فرمان دارد. این پیش‌فرض‌ها را می‌توان با استفاده از فایل‌های پیکربندی containers.conf بازنویسی کرد. .PP توزیع‌ها فایل \fB/usr/share/containers/containers.conf\fR را با تنظیمات پیش‌فرض خود عرضه می‌کنند. مدیران سیستم می‌توانند با ایجاد فایل \fB/etc/containers/containers.conf\fR فیلدهای این فایل را بازنویسی نمایند. کاربران نیز می‌توانند با ایجاد فایل \fB$HOME/.config/containers/containers.conf\fR پیش‌فرض‌ها را بیشتر سفارشی‌سازی کنند. در صورت وجود این فایل‌ها، پودمن پیش‌فرض‌های توکار خود را با فیلدهای مشخص‌شده در این فایل‌ها ادغام می‌کند. فیلدهای مشخص‌شده در فایل کاربر بر فایل مدیر سیستم، و آن نیز بر فایل توزیع ارجحیت دارد که خود بر پیش‌فرض‌های توکار اولویت دارد. .PP اگر هیچ فایل containers.conf یافت نشود، پودمن از پیش‌فرض‌های توکار استفاده می‌کند. .PP اگر متغیر محیطی \fBCONTAINERS_CONF\fP تنظیم شده باشد، مقدار آن به جای پیش‌فرض برای فایل containers.conf استفاده می‌شود. .PP \fBmounts.conf\fP (\fB/usr/share/containers/mounts.conf\fR) .PP فایل mounts.conf دایرکتوری‌های اتصال ولوم را مشخص می‌کند که هنگام اجرای دستورات \fBpodman run\fR یا \fBpodman start\fR به طور خودکار درون کانتینرها متصل (مانت) می‌شوند. مدیران سیستم می‌توانند با ایجاد \fB/etc/containers/mounts.conf\fR\& فایل پیش‌فرض را بازنویسی کنند. .PP هنگامی که پودمن در حالت بدون ریشه اجرا می‌شود، فایل \fB$HOME/.config/containers/mounts.conf\fR در صورت وجود، پیش‌فرض را بازنویسی می‌کند. برای جزئیات، به containers-mounts.conf(5) مراجعه کنید. .PP \fBpolicy.json\fP (\fB/etc/containers/policy.json\fR, \fB$HOME/.config/containers/policy.json\fR) .PP فایل‌های سیاست تأیید امضا برای تعیین سیاست‌ها (مانند کلیدهای مورد اعتماد) به کار می‌روند که هنگام تصمیم‌گیری درباره پذیرش معتبر بودن یک ایمیج یا امضاهای مجزای آن ایمیج اعمال می‌شوند. برای جزئیات، به containers-policy.json(5) مراجعه فرمایید. .PP \fBregistries.conf\fP (\fB/etc/containers/registries.conf\fR, \fB$HOME/.config/containers/registries.conf\fR) .PP فایل registries.conf فایل پیکربندی‌ای است که مشخص می‌کند هنگام کامل کردن نام ایمیج‌هایی که فاقد بخش رجیستری یا دامنه هستند، به کدام رجیستری‌های کانتینر مراجعه شود. .PP کاربران غیر ریشه پودمن می‌توانند فایل \fB$HOME/.config/containers/registries.conf\fR را ایجاد کنند تا به جای پیش‌فرض‌های سیستمی استفاده شود. .PP اگر متغیر محیطی \fBCONTAINERS_REGISTRIES_CONF\fP تنظیم شده باشد، مقدار آن به جای پیش‌فرض برای فایل registries.conf استفاده می‌شود. .PP \fBstorage.conf\fP (\fB/etc/containers/storage.conf\fR, \fB$HOME/.config/containers/storage.conf\fR) .PP فایل storage.conf فایل پیکربندی ذخیره‌سازی برای تمام ابزارهایی است که از containers/storage استفاده می‌کنند. .PP فایل پیکربندی ذخیره‌سازی، تمام گزینه‌های در دسترس برای ذخیره‌سازی کانتینر را برای ابزارهایی که از ذخیره‌ساز اشتراکی کانتینر استفاده می‌کنند مشخص می‌نماید. .PP هنگامی که پودمن در حالت بدون ریشه اجرا می‌شود، فایل \fB$HOME/.config/containers/storage.conf\fR به جای پیش‌فرض‌های سیستم مورد استفاده قرار می‌گیرد. .PP اگر متغیر محیطی \fBCONTAINERS_STORAGE_CONF\fP تنظیم شده باشد، مقدار آن به جای پیش‌فرض برای فایل storage.conf استفاده خواهد شد. .SH "حالت بدون ریشه (ROOTLESS MODE)" پودمن می‌تواند به عنوان کاربر غیر ریشه نیز استفاده شود. هنگامی که پودمن در حالت بدون ریشه اجرا می‌شود، یک فضای نام کاربری به طور خودکار برای کاربر ایجاد می‌گردد که در \fB/etc/subuid\fR و \fB/etc/subgid\fR\& تعریف شده است. .PP کانتینرهای ایجادشده توسط یک کاربر غیر ریشه برای سایر کاربران قابل مشاهده نیستند و توسط پودمن در حال اجرا با کاربر ریشه دیده یا مدیریت نمی‌شوند. .PP لازم است چندین UID/GID برای یک کاربر تنظیم شده باشد. اطمینان حاصل کنید که کاربر در فایل‌های \fB/etc/subuid\fR و \fB/etc/subgid\fR\& حضور دارد. .PP برای افزودن دامنه‌ها به این فایل‌ها، دستورات زیر را اجرا کنید: .EX $ sudo usermod --add-subuids 10000-75535 USERNAME $ sudo usermod --add-subgids 10000-75535 USERNAME .EE .PP یا محتوا را به صورت دستی اضافه نمایید: .EX $ echo USERNAME:10000:65536 >> /etc/subuid $ echo USERNAME:10000:65536 >> /etc/subgid .EE .PP برای اطلاعات بیشتر به صفحات راهنمای \fBsubuid(5)\fR و \fBsubgid(5)\fR مراجعه کنید. .PP نکته: وجود فاصله‌های خالی (Whitespace) در هر سطر از \fB/etc/subuid\fR یا \fB/etc/subgid\fR، از جمله فاصله‌های خالی در انتهای خطوط، ممکن است باعث خطای عدم یافتن مدخل شود. .PP در صورت مشخص بودن، ایمیج‌ها در \fBXDG_DATA_HOME\fR دریافت می‌شوند، در غیر این صورت در دایرکتوری خانگی کاربر تحت \fB\&.local/share/containers/storage\fR\& ذخیره خواهند شد. .PP در حال حاضر برای ایجاد یک دستگاه شبکه به نصب pasta نیاز است، در غیر این صورت کانتینرهای بدون ریشه باید در فضای نام شبکه میزبان اجرا شوند. .PP در برخی محیط‌ها مانند HPC (رایانش با کارایی بالا)، کاربران نمی‌توانند از UIDها و GIDهای اضافی سیستم‌های \fB/etc/subuid\fR و \fB/etc/subgid\fR بهره‌مند شوند. با این حال، در این محیط، پودمن بدون ریشه می‌تواند با یک UID واحد کار کند. برای این منظور، گزینه \fBignore_chown_errors\fR را در فایل \fBcontainers-storage.conf(5)\fR تنظیم کنید. این گزینه به پودمن می‌گوید هنگام دریافت یک ایمیج، خطاهای chown را هنگام تلاش برای تغییر مالکیت یک فایل در ایمیج کانتینر جهت تطابق با UID غیرریشه در ایمیج، نادیده بگیرد. این به این معنی است که تمام فایل‌ها با UID کاربر ذخیره می‌شوند. توجه داشته باشید که این موضوع می‌تواند هنگام اجرای کانتینر مشکلاتی ایجاد کند. .SS \fBنکته:\fP فایل‌سیستم‌های پشتیبانی‌نشده در حالت بدون ریشه فایل‌سیستم Overlay (OverlayFS) با هسته‌های قبل از 5.12.9 در حالت بدون ریشه پشتیبانی نمی‌شود. بسته fuse-overlayfs ابزاری است که قابلیت OverlayFS را در فضای نام کاربری فراهم می‌کند و امکان مانت کردن فایل‌سیستم‌ها را در محیط‌های بدون ریشه میسر می‌سازد. توصیه می‌شود بسته fuse-overlayfs نصب شود. در حالت بدون ریشه، در صورت نصب بودن، پودمن به طور خودکار از برنامه fuse-overlayfs به عنوان mount_program استفاده می‌کند، مادامی که فایل \fB$HOME/.config/containers/storage.conf\fR قبلاً ایجاد نشده باشد. اگر storage.conf در پوشه خانگی وجود دارد، \fBmount_program = "/usr/bin/fuse-overlayfs"\fR را تحت \fB[storage.options.overlay]\fR اضافه کنید تا این ویژگی فعال شود. .PP فایل‌سیستم شبکه (NFS) و سایر فایل‌سیستم‌های توزیع‌شده (به عنوان مثال: Lustre، Spectrum Scale و GPFS) هنگام اجرا در حالت بدون ریشه پشتیبانی نمی‌شوند زیرا این فایل‌سیستم‌ها فضای نام کاربری را درک نمی‌کنند. با این حال، پودمن بدون ریشه می‌تواند با تغییر دادن \fB$HOME/.config/containers/storage.conf\fR به‌گونه‌ای که گزینه \fBgraphroot\fR به دایرکتوری ذخیره‌شده روی حافظه محلی (غیر NFS) اشاره کند، از پوشه خانگی NFS استفاده کند. .SH "همچنین ببینید (SEE ALSO)" \fBcontainers-mounts.conf(5)\fP, \fBcontainers.conf(5)\fP, \fBcontainers-registries.conf(5)\fP, \fBcontainers-storage.conf(5)\fP, \fBbuildah(1)\fP, \fBoci-hooks(5)\fP, \fBcontainers-policy.json(5)\fP, \fBcrun(1)\fP, \fBrunc(8)\fP, \fBsubuid(5)\fP, \fBsubgid(5)\fP, \fBpasta(1)\fP, \fBconmon(8)\fP, \fBpodman-quadlet(1)\fP, \fBpodman-systemd.unit(5)\fP .SS "عیب‌یابی (Troubleshooting)" برای راه‌حل‌های مربوط به مشکلات رایج، podman-troubleshooting(7) را ببینید. .PP برای مشکلات مربوط به حالت بدون ریشه، podman-rootless(7) را ببینید. .SH "تاریخچه (HISTORY)" دسامبر ۲۰۱۶، در ابتدا توسط Dan Walsh گردآوری شد: dwalsh@redhat.com \[la]mailto:dwalsh@redhat.com\[ra]