.nh .TH buildah-push "1" "June 2017" "buildah" .SH "نام (NAME)" buildah-push \- ارسال و بارگذاری ایمیج به رجیستری یا مقصد مشخص .SH "خلاصه دستور (SYNOPSIS)" .PP \fBbuildah push\fP [\fIگزینه‌ها\fP] \fIimage\fP [\fIdestination\fP] .SH "توضیحات (DESCRIPTION)" .PP ارسال (push) یک ایمیج از فضای ذخیره‌سازی محلی به یک مقصد مشخص، به همراه فشرده‌سازی یا استخراج لایه‌ها در صورت نیاز. .SH "شناسه ایمیج (imageID)" .PP ایمیج ذخیره‌شده در فضای ذخیره‌سازی محلی کانتینر (container/storage). .SH "مقصد (DESTINATION)" .PP شناسه DESTINATION مکانی است که ایمیج کانتینر به آن ارسال (push) می‌شود. این گزینه از تمامی پروتکل‌های انتقال موجود در \fBcontainers-transports(5)\fR پشتیبانی می‌کند (مثال‌های زیر را ببینید). اگر هیچ پروتکل انتقالی مشخص نشود، از روش انتقال \fBdocker\fR (یعنی رجیستری کانتینر) استفاده می‌شود. .SH "گزینه‌ها (OPTIONS)" .PP \fB--all\fP .PP اگر ایمیج مشخص‌شده یک فهرست مانیفست (manifest list) یا نمایه ایمیج (image index) باشد، علاوه بر خود فهرست یا نمایه، تمام ایمیج‌های موجود در آن نیز ارسال می‌شوند. .PP \fB--authfile\fP \fIpath\fP .PP مسیر فایل احراز هویت. پیش‌فرض ${XDG_RUNTIME_DIR}/containers/auth.json است. برای اطلاعات بیشتر به containers-auth.json(5) مراجعه کنید. این فایل با استفاده از \fBbuildah login\fR\& ایجاد می‌شود. .PP اگر وضعیت احراز هویت در آنجا یافت نشود، فایل $HOME/.docker/config.json که با \fBdocker login\fR\& تنظیم شده بررسی می‌گردد. .PP نکته: می‌توانید با تنظیم متغیر محیطی REGISTRY_AUTH_FILE مسیر پیش‌فرض فایل احراز هویت را بازنویسی کنید: \fBexport REGISTRY_AUTH_FILE=path\fR .PP \fB--cert-dir\fP \fIpath\fP .PP استفاده از گواهی‌های موجود در \fIpath\fP (*\&.crt, *\&.cert, *\&.key) برای اتصال به رجیستری. دایرکتوری پیش‌فرض گواهی‌ها \fI/etc/containers/certs.d\fP\& است. .PP \fB--compression-format\fP \fIformat\fP .PP فرمت فشرده‌سازی مورد استفاده را مشخص می‌کند. مقادیر پشتیبانی‌شده عبارتند از: \fBgzip\fR، \fBzstd\fR و \fBzstd:chunked\fR\&. گزینه \fBzstd:chunked\fR با رمزگذاری ایمیج‌ها ناسازگار است و در این حالت همراه با یک پیام هشدار، همانند \fBzstd\fR با آن رفتار خواهد شد. اگر مشخص نشود، فرمت از تنظیم \fBcompression_format\fR در فایل containers.conf خوانده می‌شود. .PP \fB--compression-level\fP \fIlevel\fP .PP سطح فشرده‌سازی مورد استفاده را مشخص می‌کند. این مقدار وابسته به الگوریتم فشرده‌سازی استفاده‌شده است؛ برای مثال برای zstd مقادیر مجاز در بازه ۱ تا ۲۰ (شامل هر دو) و برای gzip در بازه ۱ تا ۹ (شامل هر دو) است. اگر مشخص نشود، سطح از تنظیم \fBcompression_level\fR در فایل containers.conf خوانده می‌شود. .PP \fB--creds\fP \fIcreds\fP .PP نام کاربری و گذرواژه [username[:password]] برای احراز هویت در رجیستری (در صورت نیاز). اگر یک یا هر دو مقدار ارائه نشوند، اعلان خط فرمان ظاهر خواهد شد و می‌توان مقدار را وارد کرد. گذرواژه بدون بازتاب کاراکترها وارد می‌شود. .PP \fB--digestfile\fP \fIDigestfile\fP .PP پس از کپی ایمیج، شناسه یکتای هش (digest) ایمیج حاصل را در فایل مشخص‌شده ذخیره می‌کند. .PP \fB--disable-compression\fP, \fB-D\fP .PP عدم فشرده‌سازی کپی لایه‌های سیستم فایل که قرار است ارسال شوند. .PP \fB--encrypt-layer\fP \fIlayer(s)\fP .PP لایه‌(ها) برای رمزگذاری: اندیس لایه‌ها با شروع از صفر و با پشتیبانی از اندیس‌گذاری منفی (به عنوان مثال 0 اولین لایه و 1- آخرین لایه است). در صورت عدم تعیین، اگر سوییچ encryption-key مشخص شده باشد، تمامی لایه‌ها رمزگذاری خواهند شد. .PP \fB--encryption-key\fP \fIkey\fP .PP فرمت [protocol:keyfile] پروتکل رمزگذاری را مشخص می‌کند که می‌تواند JWE (RFC7516)، PGP (RFC4880) و PKCS7 (RFC2315) باشد و همچنین کلیدهای مورد نیاز برای رمزگذاری ایمیج را تعیین می‌کند. برای مثال: jwe:/path/to/key.pem یا pgp:admin@example.com یا pkcs7:/path/to/x509-file. .PP \fB--force-compression\fP .PP در صورت تنظیم، ارسال ایمیج از الگوریتم فشرده‌سازی مشخص‌شده استفاده می‌کند حتی اگر مقصد در حال حاضر شامل نسخه‌ای با فشرده‌سازی متفاوت باشد. اگر \fB--compression-format\fR به صورت صریح در خط فرمان مشخص شده باشد یا \fBcompression_format\fR در containers.conf تنظیم شده باشد، مقدار پیش‌فرض \fBtrue\fR است، در غیر این صورت \fBfalse\fR خواهد بود. .PP \fB--format\fP, \fB-f\fP .PP نوع مانیفست (oci، v2s2 یا v2s1) برای استفاده هنگام ارسال ایمیج (پیش‌فرض، نوع مانیفست ایمیج مبدا است، به همراه گزینه‌های پشتیبان). .PP \fB--quiet\fP, \fB-q\fP .PP هنگام نوشتن ایمیج خروجی، از نمایش خروجی‌های مربوط به درصد پیشرفت خودداری می‌کند. .PP \fB--remove-signatures\fP .PP هنگام ارسال ایمیج‌ها، امضاها کپی نشوند. .PP \fB--retry\fP \fIattempts\fP .PP تعداد دفعات تلاش مجدد در صورت بروز خطا هنگام ارسال ایمیج‌ها به رجیستری. .PP پیش‌فرض \fB3\fR\& است. .PP \fB--retry-delay\fP \fIduration\fP .PP مدت زمان تأخیر میان تلاش‌های مجدد در صورت بروز خطا هنگام ارسال ایمیج‌ها به رجیستری. .PP پیش‌فرض \fB2s\fR\& است. .PP \fB--rm\fP .PP هنگام ارسال یک فهرست مانیفست یا نمایه ایمیج، در صورت موفقیت‌آمیز بودن ارسال، آنها را از فضای ذخیره‌سازی محلی حذف می‌کند. .PP \fB--sign-by\fP \fIfingerprint\fP .PP امضای ایمیج ارسالی با استفاده از کلید GPG متناظر با اثر انگشت (fingerprint) مشخص‌شده. .PP \fB--tls-verify\fP \fIbool-value\fP .PP الزام استفاده از HTTPS و اعتبارسنجی گواهی‌ها هنگام برقراری ارتباط با رجیستری‌های کانتینر (پیش‌فرض true است). اعتبارسنجی TLS هنگام ارتباط با یک رجیستری ناامن (insecure) قابل استفاده نیست. .SH "مثال (EXAMPLE)" .PP این مثال ایمیج مشخص‌شده توسط imageID را با فرمت docker در یک دایرکتوری محلی ارسال (push) می‌کند. .PP \fB# buildah push imageID dir:/path/to/image\fR .PP این مثال ایمیج مشخص‌شده توسط imageID را با فرمت oci در یک دایرکتوری محلی ارسال می‌کند. .PP \fB# buildah push imageID oci:/path/to/layout:image:tag\fR .PP این مثال ایمیج مشخص‌شده توسط imageID را با فرمت oci به یک بایگانی تار (tar) ارسال می‌کند. .PP \fB# buildah push imageID oci-archive:/path/to/archive:image:tag\fR .PP این مثال ایمیج مشخص‌شده توسط imageID را به یک رجیستری کانتینر با نام registry.example.com ارسال می‌کند. .PP \fB# buildah push imageID docker://registry.example.com/repository:tag\fR .PP این مثال ایمیج مشخص‌شده توسط imageID را به یک رجیستری کانتینر به نام registry.example.com ارسال کرده و هش (digest) را در فایل تعیین‌شده digestfile ذخیره می‌کند. .PP \fB# buildah push --digestfile=/tmp/mydigest imageID docker://registry.example.com/repository:tag\fR .PP این مثال مانند \fBdocker push\fP عمل می‌کند، با این فرض که \fIregistry.example.com/my_image\fP یک ایمیج محلی است. .PP \fB# buildah push registry.example.com/my_image\fR .PP این مثال ایمیج مشخص‌شده توسط imageID را به همراه اطلاعات احراز هویت از مسیر /tmp/auths/myauths.json به یک رجیستری کانتینر خصوصی به نام registry.example.com ارسال می‌کند. .PP \fB# buildah push --authfile /tmp/auths/myauths.json imageID docker://registry.example.com/repository:tag\fR .PP این مثال ایمیج مشخص‌شده توسط imageID را ارسال کرده و در فضای ذخیره‌سازی محلی کانتینر داکر قرار می‌دهد. .PP \fB# buildah push imageID docker-daemon:image:tag\fR .PP این مثال ایمیج مشخص‌شده توسط imageID را به رجیستری روی localhost ارسال کرده و همزمان اعتبارسنجی TLS را غیرفعال می‌سازد. \fB# buildah push --tls-verify=false imageID localhost:5000/my-imageID\fR .PP این مثال ایمیج مشخص‌شده توسط imageID را با استفاده از اطلاعات هویتی (credentials) و گواهی‌ها برای احراز هویت، به رجیستری روی localhost ارسال می‌کند. \fB# buildah push --cert-dir ~/auth --tls-verify=true --creds=username:password imageID localhost:5000/my-imageID\fR .SH "محیط (ENVIRONMENT)" .PP \fBBUILD_REGISTRY_SOURCES\fP .PP متغیر BUILD_REGISTRY_SOURCES در صورت تنظیم، به عنوان یک شیء JSON در نظر گرفته می‌شود که شامل فهرست‌هایی از نام‌های رجیستری تحت کلیدهای \fBinsecureRegistries\fR، \fBblockedRegistries\fR و \fBallowedRegistries\fR\& است. .PP هنگام ارسال ایمیج به یک رجیستری، اگر بخشی از نام ایمیج مقصد که مربوط به نام رجیستری است با هر یک از موارد موجود در فهرست \fBblockedRegistries\fR مطابقت داشته باشد، عملیات ارسال رد می‌شود. اگر رجیستری‌هایی در فهرست \fBallowedRegistries\fR وجود داشته باشند و بخش مربوط به رجیستری در نام مقصد داخل آن فهرست نباشد، عملیات ارسال رد خواهد شد. .PP \fBTMPDIR\fP .PP متغیر محیطی TMPDIR به کاربر امکان می‌دهد مشخص کند که فایل‌های موقت هنگام دریافت (pull) و ارسال (push) ایمیج‌ها در کجا ذخیره شوند. مقدار پیش‌فرض '/var/tmp' است. .SH "فایل‌ها (FILES)" .PP \fBregistries.conf\fP (\fB/etc/containers/registries.conf\fR) .PP فایل registries.conf فایل پیکربندی است که مشخص می‌کند هنگام کامل کردن نام ایمیج‌هایی که فاقد بخش رجیستری یا دامنه هستند، به کدام رجیستری‌های کانتینر مراجعه شود. .PP \fBpolicy.json\fP (\fB/etc/containers/policy.json\fR) .PP فایل سیاست امضا. این فایل خط‌مشی اعتماد را برای ایمیج‌های کانتینر تعریف می‌کند و کنترل می‌نماید که کدام رجیستری‌های کانتینر می‌توانند برای ایمیج استفاده شوند و اینکه آیا ابزار باید به ایمیج‌ها اعتماد کند یا خیر. .SH "همچنین ببینید (SEE ALSO)" .PP buildah(1), buildah-login(1), containers-policy.json(5), docker-login(1), containers-registries.conf(5), buildah-manifest(1), containers-transports(5), containers-auth.json(5)