.nh .TH umoci-unpack(1) # umoci unpack - Unpacks an OCI image tag into an runtime bundle Aleksa Sarai SEPTEMBER 2018 .SH "نام (NAME)" umoci unpack \- استخراج تگ تصویر OCI در یک runtime bundle .SH "خلاصه دستور (SYNOPSIS)" \fBumoci unpack\fP \fB--image\fP=\fIimage\fP[:\fItag\fP] [\fB--rootless\fP] [\fB--uid-map\fP=\fIvalue\fP] [\fB--uid-map\fP=\fIvalue\fP] [\fB--keep-dirlinks\fP] \fIbundle\fP .SH "توضیحات (DESCRIPTION)" تمام لایه‌ها را (به‌صورت قطعی و تعیّن‌پذیر) در یک OCI runtime bundle در مسیر \fIbundle\fP استخراج می‌کند و همچنین یک پیکربندی زمان اجرای OCI متناظر با پیکربندی تصویر ایجاد می‌نماید. علاوه بر این، در هنگام استخراج، یک مشخصات \fBmtree\fP(8) تولید می‌شود تا امکان ایجاد تفاوت‌های سیستم‌فایل (دلتاها) توسط \fBumoci-repack\fP(1) فراهم شده و ساخت تصاویر چندلایه‌ی OCI میسر گردد. .SH "گزینه‌ها (OPTIONS)" گزینه‌های عمومی در \fBumoci\fP(1) تعریف شده‌اند. .PP \fB--image\fP=\fIimage\fP[:\fItag\fP] تگ تصویر OCI که در \fIbundle\fP استخراج خواهد شد. \fIimage\fP باید مسیری به یک تصویر معتبر OCI و \fItag\fP باید یک تگ معتبر در تصویر باشد. اگر \fItag\fP مشخص نشود، مقدار پیش‌فرض آن "latest" خواهد بود. .PP \fB--rootless\fP پشتیبانی از استخراج بدون ریشه (rootless) را فعال می‌کند. این گزینه امکان استفاده از \fBumoci-unpack\fP(1) و \fBumoci-repack\fP(1) را به‌عنوان یک کاربر غیرممتاز فراهم می‌سازد. استفاده از این پرچم به معنای اعمال \fB--uid-map=0:$(id -u):1\fP و \fB--gid-map=0:$(id -g):1\fP و همچنین فعال‌سازی چندین قابلیت برای شبیه‌سازی بخش‌هایی از فرایند استخراج به منظور تولید نزدیک‌ترین حالت ممکن به سیستم‌فایل اصلی است. توجه داشته باشید که تقریباً در هیچ حالتی امکان استخراج بی‌نقص یک تصویر OCI با \fB--rootless\fP وجود ندارد، اما نتیجه تا جای ممکن نزدیک خواهد بود. .PP \fB--uid-map\fP=\fIvalue\fP یک نگاشت UID را برای استفاده در هنگام باز کردن (و بسته‌بندی مجدد) لایه‌ها مشخص می‌کند. این گزینه به‌روشی مشابه با \fBuser_namespaces\fP(7) استفاده می‌شود و به‌صورت \fBcontainer:host[:size]\fP است. .PP \fB--gid-map\fP=\fIvalue\fP یک نگاشت GID را برای استفاده در هنگام باز کردن (و بسته‌بندی مجدد) لایه‌ها مشخص می‌کند. این گزینه به‌روشی مشابه با \fBuser_namespaces\fP(7) استفاده می‌شود و به‌صورت \fBcontainer:host[:size]\fP است. .PP \fB--keep-dirlinks\fP به‌جای بازنویسی دایرکتوری‌هایی که پیوندی به دایرکتوری‌های دیگر هستند در شرایطی که لایه‌های بالاتر دارای یک دایرکتوری صریح باشند، نوشتن مستقیماً از طریق همان پیوند نمادین انجام می‌شود. این گزینه از گزینه‌ای با همین نام در rsync الهام گرفته شده است. .SH "مثال‌ها (EXAMPLES)" دستورات زیر یک تصویر را با استفاده از \fBskopeo\fP(1) از یک رجیستری \fBdocker\fP(1) بارگیری کرده، تصویر مذکور را استخراج می‌کنند و سپس با استفاده از OCI runtime bundle استخراج‌شده، کانتینر جدیدی را با \fBrunc\fP(8) ایجاد می‌نمایند. سپس تصویر دوباره با \fBumoci-repack\fP(1) بسته‌بندی می‌شود. .EX % skopeo copy docker://opensuse/amd64:42.2 oci:image:latest # umoci unpack --image image bundle # runc run -b bundle ctr [ container session ] # umoci repack --image image bundle .EE .PP با استفاده از \fB--rootless\fP همچنین می‌توان مثال بالا را بدون دسترسی ریشه (root) اجرا کرد. \fBumoci\fP پیکربندی‌ای تولید می‌کند که با کانتینرهای بدون ریشه در \fBrunc\fP(8) سازگار است. .EX % skopeo copy docker://opensuse/amd64:42.2 oci:image:latest % umoci unpack --image image --rootless bundle % runc --root $HOME/runc run -b bundle ctr [ rootless container session ] % umoci repack --image image --rootless bundle .EE .SH "همچنین ببینید (SEE ALSO)" \fBumoci\fP(1), \fBumoci-repack\fP(1), \fBrunc\fP(8)