'\" t .nh .TH buildah "1" "March 2017" "buildah" .SH "نام (NAME)" buildah \- ابزار خط فرمان برای ساخت ایمیجهای کانتینری سازگار با OCI .SH "خلاصه دستور (SYNOPSIS)" .PP \fBbuildah\fP [\fIگزینه‌ها\fP] \fICOMMAND\fP [\fIARG...\fP] .SH "توضیحات (DESCRIPTION)" .PP بسته Buildah یک ابزار خط فرمان ارائه می‌دهد که می‌تواند برای موارد زیر استفاده شود: .EX * ایجاد یک کانتینر در حال کار، چه از پایه (scratch) و چه با استفاده از یک ایمیج به عنوان نقطه آغاز. * سوار کردن (mount) سیستم فایل ریشه یک کانتینر در حال کار جهت دستکاری آن. * پیاده کردن (unmount) سیستم فایل ریشه یک کانتینر در حال کار. * استفاده از محتویات به‌روزرسانی‌شده سیستم فایل ریشه کانتینر به عنوان یک لایه سیستم فایل برای ساخت ایمیج جدید. * حذف یک کانتینر در حال کار یا یک ایمیج. * تغییر نام یک کانتینر محلی. .EE .SH "گزینه‌ها (OPTIONS)" .PP \fB--cgroup-manager\fP=\fImanager\fP .PP مدیر CGroup مورد استفاده برای cgroupهای کانتینر. مقادیر پشتیبانی‌شده عبارتند از cgroupfs یا systemd. مقدار پیش‌فرض systemd است، مگر اینکه در فایل containers.conf بازنویسی شده باشد. .PP نکته: تنظیم این فلگ می‌تواند هنگام فراخوانی دستورات بر روی کانتینرهایی که قبلاً با نوع مدیر CGroup دیگری ایجاد شده‌اند، باعث بروز مشکل در برخی دستورات شود. نکته: مدیر CGroup در حالت بدون ریشه (rootless) هنگام استفاده از نگارش اول CGroups (یعنی V1) پشتیبانی نمی‌شود. .PP \fB--imagestore\fP \fIpath\fP .PP مسیری که محتوای ایمیج‌های دریافت‌شده (pulled) و ساخته‌شده در آن ذخیره خواهد شد. به طور پیش‌فرض، مکان پیکربندی‌شده \fB--root\fP هم برای ایمیج‌های دریافت‌شده و ساخته‌شده و هم برای کانتینرها استفاده می‌شود. اگر درایور ذخیره‌سازی \fIoverlay\fP باشد، هر ایمیجی که قبلاً در مکان \fB--root\fP نوشته شده باشد همچنان در دسترس خواهد بود. .PP این گزینه تنظیم \fIimagestore\fP در containers-storage.conf(5) را بازنویسی می‌کند. .PP \fB--log-level\fP \fIlevel\fP .PP سطح گزارش‌گیری مورد استفاده. می‌تواند یکی از مقادیر «trace»، «debug»، «info»، «warn»، «error»، «fatal» یا «panic» باشد؛ مقدار پیش‌فرض «warn» است. .PP \fB--help, -h\fP .PP نمایش راهنما. .PP \fB--registries-conf\fP \fIpath\fP .PP مسیر فایل پیکربندی که مشخص می‌کند هنگام تکمیل نام ایمیج‌هایی که فاقد بخش رجیستری یا دامنه هستند، به کدام رجیستری‌های کانتینر مراجعه شود. استفاده از این گزینه پیشنهاد نمی‌شود، زیرا رفتار پیش‌فرض مبنی بر استفاده از پیکربندی سراسری سیستم (\fI/etc/containers/registries.conf\fP) در بیشتر موارد ترجیح داده می‌شود. .PP \fB--registries-conf-dir\fP \fIpath\fP .PP مسیر دایرکتوری حاوی قطعه‌های پیکربندی (snippets) که مشخص می‌کنند هنگام تکمیل نام ایمیج‌های فاقد بخش رجیستری یا دامنه، به کدام رجیستری‌ها باید مراجعه شود. استفاده از این گزینه پیشنهاد نمی‌شود، چرا که رفتار پیش‌فرض مبنی بر استفاده از پیکربندی سراسری سیستم (\fI/etc/containers/registries.d\fP) معمولاً ارجح است. .PP \fB--root\fP \fIpath\fP .PP دایرکتوری ریشه ذخیره‌سازی (پیش‌فرض: «/var/lib/containers/storage» برای UID 0 و «‎$HOME/.local/share/containers/storage» برای سایر کاربران). دایرکتوری ریشه پیش‌فرض در /etc/containers/storage.conf پیکربندی شده است. .PP \fB--runroot\fP \fIpath\fP .PP دایرکتوری وضعیت ذخیره‌سازی (پیش‌فرض: «/run/containers/storage» برای UID 0 و «‎/run/user/$UID» برای سایر کاربران). دایرکتوری وضعیت پیش‌فرض در /etc/containers/storage.conf پیکربندی شده است. .PP \fB--short-name-alias-conf\fP \fIpath\fP .PP مسیر فایلی که شامل نگاشت‌های کش‌شده میان نام‌های کوتاه ایمیج و نام‌های کامل متناظر آن‌ها است. این گزینه برای نگاشت نام‌های ایمیج مشخص‌شده با نام‌های کوتاه مانند «ubi8» (که فاقد مؤلفه رجیستری هستند) به یک نام کامل متناظر شامل رجیستری و سایر مؤلفه‌ها، مانند «registry.access.redhat.com/ubi8» استفاده می‌شود. استفاده از این گزینه پیشنهاد نمی‌شود، زیرا رفتار پیش‌فرض مبنی بر استفاده از کش سراسری سیستم (\fI/var/cache/containers/short-name-aliases.conf\fP) یا کش اختصاصی کاربر (\fI$HOME/.cache/containers/short-name-aliases.conf\fP) برای تکمیل پیش‌فرض‌های سراسری سیستم، معمولاً ترجیح داده می‌شود. .PP \fB--storage-driver\fP \fBvalue\fP .PP درایور ذخیره‌سازی. درایور ذخیره‌سازی پیش‌فرض برای UID 0 در /etc/containers/storage.conf (و \fB$HOME/.config/containers/storage.conf\fR در حالت بدون ریشه) پیکربندی شده است، و برای سایر کاربران \fIvfs\fP است. متغیر محیطی \fBSTORAGE_DRIVER\fR مقدار پیش‌فرض را بازنویسی می‌کند. درایوری که با --storage-driver مشخص شود بر تمام موارد دیگر اولویت دارد. .PP مثال‌ها: «overlay»، «vfs» .PP بازنویسی این گزینه موجب نادیده گرفته شدن تنظیمات \fIstorage-opt\fP در /etc/containers/storage.conf خواهد شد. کاربر باید گزینه‌های اضافی را از طریق فلگ \fB--storage-opt\fR مشخص کند. .PP \fB--storage-opt\fP \fBvalue\fP .PP گزینه درایور ذخیره‌سازی. گزینه‌های پیش‌فرض درایور ذخیره‌سازی در /etc/containers/storage.conf (و \fB$HOME/.config/containers/storage.conf\fR در حالت بدون ریشه) پیکربندی شده‌اند. متغیر محیطی \fBSTORAGE_OPTS\fR مقدار پیش‌فرض را بازنویسی می‌کند. گزینه‌های مشخص‌شده با --storage-opt بر همه اولویت دارند. .PP \fB--transient-store\fP \fIbool-value\fP .PP ذخیره فراداده‌های مربوط به کانتینرها در دایرکتوری وضعیت ذخیره‌سازی (\fB--runroot\fP)، با این هدف که رکوردهای مربوط به آن‌ها با راه‌اندازی مجدد سیستم حذف شوند. با این حال، همچنان در زمان بالا آمدن سیستم باید جمع‌آوری داده‌های زائد (garbage collection) اضافی انجام شود؛ بنابراین این گزینه باید در بیشتر پیکربندی‌ها غیرفعال باقی بماند. (پیش‌فرض: false) .PP \fB--userns-gid-map\fP \fImapping\fP .PP به طور مستقیم یک نگاشت GID را مشخص می‌کند که باید برای تعیین مالکیت در سطح سیستم فایل، بر روی محتویات کانتینر در حال کار استفاده شود. دستوراتی که هنگام پردازش دستورالعمل‌های \fBRUN\fR اجرا می‌شوند، به طور پیش‌فرض در فضای‌نام کاربری مخصوص به خود که با استفاده از نگاشت‌های UID و GID پیکربندی شده است، اجرا خواهند شد. .PP مدخل‌های این نگاشت به شکل یک یا چند سه‌تایی جداشده با دونقطه هستند که شامل GID شروع درون کانتینر، GID شروع متناظر در سطح میزبان، و تعداد شناسه‌های متوالی است که مدخل نگاشت نشان می‌دهد. .PP این گزینه، تنظیم \fIremap-gids\fP در بخش \fIoptions\fP از /etc/containers/storage.conf را بازنویسی می‌کند. .PP اگر این گزینه مشخص نشده باشد، اما یک تنظیم سراسری --userns-gid-map ارائه شده باشد، از تنظیمات گزینه سراسری استفاده خواهد شد. .PP اگر هیچ‌کدام از گزینه‌های --userns-uid-map-user، ‏--userns-gid-map-group یا --userns-gid-map مشخص نشده باشند، اما --userns-uid-map مشخص شده باشد، نگاشت GID طوری تنظیم می‌شود که از همان مقادیر عددی نگاشت UID استفاده کند. .PP \fBنکته:\fP هنگامی که این گزینه توسط یک کاربر بدون ریشه (rootless) مشخص می‌شود، نگاشت‌های مشخص‌شده به جای اینکه نسبت به میزبان باشند (همان‌طور که در حالت با ریشه است)، نسبت به فضای‌نام کاربریِ بدون ریشه در کانتینر محاسبه می‌شوند. .PP \fB--userns-uid-map\fP \fImapping\fP .PP به طور مستقیم یک نگاشت UID را مشخص می‌کند که باید برای تعیین مالکیت در سطح سیستم فایل، بر روی محتویات کانتینر در حال کار استفاده شود. دستوراتی که هنگام پردازش دستورالعمل‌های \fBRUN\fR اجرا می‌شوند، به طور پیش‌فرض در فضای‌نام کاربری خود که با استفاده از نگاشت‌های UID و GID پیکربندی شده است، اجرا خواهند شد. .PP مدخل‌های این نگاشت به شکل یک یا چند سه‌تایی جداشده با دونقطه هستند که شامل UID شروع درون کانتینر، UID شروع متناظر در سطح میزبان، و تعداد شناسه‌های متوالی است که مدخل نگاشت نشان می‌دهد. .PP این گزینه، تنظیم \fIremap-uids\fP در بخش \fIoptions\fP از /etc/containers/storage.conf را بازنویسی می‌کند. .PP اگر این گزینه مشخص نشده باشد، اما یک تنظیم سراسری --userns-uid-map ارائه شده باشد، از تنظیمات گزینه سراسری استفاده خواهد شد. .PP اگر هیچ‌کدام از گزینه‌های --userns-uid-map-user، ‏--userns-gid-map-group یا --userns-uid-map مشخص نشده باشند، اما --userns-gid-map مشخص شده باشد، نگاشت UID طوری تنظیم می‌شود که از همان مقادیر عددی نگاشت GID استفاده کند. .PP \fBنکته:\fP هنگامی که این گزینه توسط یک کاربر بدون ریشه مشخص می‌شود، نگاشت‌های مشخص‌شده به جای اینکه نسبت به میزبان باشند (همان‌طور که در حالت با ریشه است)، نسبت به فضای‌نام کاربریِ بدون ریشه در کانتینر محاسبه می‌شوند. .PP \fB--version\fP, \fB-v\fP .PP چاپ نسخه برنامه. .SH "متغیرهای محیطی (ENVIRONMENT VARIABLES)" .PP Buildah می‌تواند متغیرهای محیطی را از مدخل env در جدول [engine] در containers.conf(5) تنظیم کند. این متغیرها را می‌توان با ارسال متغیرهای محیطی پیش از دستورات \fBbuildah\fR بازنویسی کرد. .SH "دستورات (COMMANDS)" .TS allbox; l l l l l l . \fBدستور\fP \fBصفحه راهنما\fP \fBتوضیحات\fP add buildah-add(1) T{ افزودن محتوای یک فایل، نشانی اینترنتی (URL) یا یک دایرکتوری به کانتینر. T} build buildah-build(1) T{ ساخت یک ایمیج OCI با استفاده از دستورالعمل‌های موجود در یک یا چند Containerfile. T} commit buildah-commit(1) T{ ایجاد یک ایمیج از روی یک کانتینر در حال کار. T} config buildah-config(1) T{ به‌روزرسانی تنظیمات پیکربندی ایمیج. T} containers buildah-containers(1) T{ فهرست کردن کانتینرهای در حال کار و ایمیج‌های پایه آن‌ها. T} copy buildah-copy(1) T{ کپی کردن محتوای یک فایل، نشانی اینترنتی یا دایرکتوری به دایرکتوری کاری کانتینر. T} from buildah-from(1) T{ ایجاد یک کانتینر در حال کار جدید، چه از پایه و چه با استفاده از یک ایمیج مشخص به عنوان نقطه آغاز. T} images buildah-images(1) T{ فهرست کردن ایمیج‌ها در فضای ذخیره‌سازی محلی. T} info buildah-info(1) T{ نمایش اطلاعات سیستم Buildah. T} inspect buildah-inspect(1) T{ بازرسی پیکربندی یک کانتینر یا ایمیج. T} login buildah-login(1) T{ ورود به یک رجیستری کانتینر. T} logout buildah-logout(1) T{ خروج از یک رجیستری کانتینر. T} manifest buildah-manifest(1) T{ ایجاد و دستکاری فهرست‌های مانیفست و نمایه‌های ایمیج. T} mkcw buildah-mkcw(1) T{ تبدیل یک ایمیج کانتینری معمولی به یک ایمیج بار کاری محرمانه. T} mount buildah-mount(1) T{ سوار کردن (mount) سیستم فایل ریشه کانتینر در حال کار. T} prune buildah-prune(1) T{ پاکسازی ایمیج‌های واسط و همچنین کش ساخت و سوار کردن. T} pull buildah-pull(1) T{ دریافت یک ایمیج از مکان مشخص‌شده. T} push buildah-push(1) T{ ارسال یک ایمیج از فضای ذخیره‌سازی محلی به مکانی دیگر. T} rename buildah-rename(1) T{ تغییر نام یک کانتینر محلی. T} rm buildah-rm(1) T{ حذف یک یا چند کانتینر در حال کار. T} rmi buildah-rmi(1) T{ حذف یک یا چند ایمیج. T} run buildah-run(1) T{ اجرای یک دستور در داخل کانتینر. T} source buildah-source(1) T{ ایجاد، ارسال، دریافت و مدیریت ایمیج‌های منبع و دست‌ساخته‌های منبع مرتبط. T} tag buildah-tag(1) T{ افزودن یک نام اضافی به یک ایمیج محلی. T} umount buildah-umount(1) T{ پیاده کردن (unmount) سیستم فایل ریشه یک کانتینر در حال کار. T} unshare buildah-unshare(1) T{ اجرای یک دستور در یک فضای‌نام کاربری با نگاشت‌های شناسه اصلاح‌شده. T} version buildah-version(1) T{ نمایش اطلاعات نسخه Buildah. T} .TE .SH "فایل‌ها (FILES)" .PP \fBstorage.conf\fP (\fB/etc/containers/storage.conf\fR) .PP پرونده storage.conf فایل پیکربندی ذخیره‌سازی برای تمامی ابزارهایی است که از containers/storage استفاده می‌کنند. .PP فایل پیکربندی ذخیره‌سازی، تمامی گزینه‌های ذخیره‌سازی کانتینری در دسترس را برای ابزارهایی که از فضای ذخیره‌سازی اشتراکی کانتینر بهره می‌برند، مشخص می‌کند. .PP \fBmounts.conf\fP (\fB/usr/share/containers/mounts.conf\fR و به صورت اختیاری \fB/etc/containers/mounts.conf\fR) .PP فایل‌های mounts.conf فایل‌ها یا دایرکتوری‌های سوار شدن حجم (volume mount) را مشخص می‌کنند که هنگام اجرای دستورات \fBbuildah run\fR یا \fBbuildah build\fR به طور خودکار درون کانتینرها سوار می‌شوند. فرایندهای کانتینر می‌توانند از این محتوا استفاده کنند. محتوای حجم سوارشده در ایمیج نهایی ذخیره (commit) نمی‌شود. .PP معمولاً این دایرکتوری‌ها برای انتقال رازها یا گواهی‌های اعتبارسنجی مورد نیاز نرم‌افزار بسته جهت دسترسی به مخازن بسته راه دور استفاده می‌شوند. .PP برای نمونه، در یک mounts.conf با خط «\fB/usr/share/rhel/secrets:/run/secrets\fR»، محتوای دایرکتوری \fB/usr/share/rhel/secrets\fR روی \fB/run/secrets\fR درون کانتینر سوار می‌شود. این نقطه اتصال به اشتراک‌های Red Hat Enterprise Linux میزبان اجازه می‌دهد درون کانتینر استفاده شوند. همچنین اگر مقصد با مسیر مبدأ یکسان باشد، می‌توان از ذکر مقصد صرف‌نظر کرد. به عنوان مثال، مشخص کردن \fB/var/lib/secrets\fR دایرکتوری را در همان مسیر مقصد کانتینر یعنی \fB/var/lib/secrets\fR سوار می‌کند. .PP توجه داشته باشید که این یک سوار کردن حجم (volume mount) نیست. محتوای این حجم‌ها در فضای ذخیره‌سازی کانتینر کپی می‌شود، نه اینکه مستقیماً از هاست bind mount شود. .PP \fBregistries.conf\fP (\fB/etc/containers/registries.conf\fR) .PP پرونده registries.conf فایل پیکربندی است که مشخص می‌کند هنگام تکمیل نام ایمیج‌هایی که فاقد بخش رجیستری یا دامنه هستند، به کدام رجیستری‌های کانتینر باید مراجعه شود. .PP \fBregistries.d\fP (\fB/etc/containers/registries.d\fR) .PP دایرکتوری حاوی قطعه‌های پیکربندی است که مشخص می‌کنند هنگام تکمیل نام ایمیج‌های فاقد بخش رجیستری یا دامنه، به کدام رجیستری‌ها مراجعه شود. .SH "همچنین ببینید (SEE ALSO)" .PP containers.conf(5), containers-mounts.conf(5), newuidmap(1), newgidmap(1), containers-registries.conf(5), containers-storage.conf(5) .SH "تاریخچه (HISTORY)" .PP دسامبر ۲۰۱۷، در ابتدا توسط تام سوینی (Tom Sweeney) گردآوری شد tsweeney@redhat.com \[la]mailto:tsweeney@redhat.com\[ra]