برای ساخت تصاویر Docker از Kaniko استفاده کنید

ساخت وبلاگ

معرفی شده در Gitlab 11. 2. نیاز به دونده Gitlab 11. 2 و بالاتر دارد.

Kaniko ابزاری برای ساخت تصاویر کانتینر از یک dockerfile ، داخل یک ظرف یا خوشه Kubeetes است.

  • Docker-In-Docker برای عملکرد به حالت ممتاز نیاز دارد که این یک نگرانی امنیتی قابل توجه است.
  • Docker-In-Docker به طور کلی یک پنالتی عملکرد را متحمل می شود و می تواند بسیار کند باشد.

الزامات

  • Kubeetes.
  • داکر
  • دستگاه داکر.

ساختن یک تصویر داکر با Kaniko

  • تصویر اشکال زدایی Kaniko توصیه می شود (gcr. io/kaniko-project/extour:debug) زیرا دارای پوسته است و برای استفاده از یک تصویر با Gitlab CI/CD یک پوسته لازم است.
  • ورودی ورودی باید نادیده گرفته شود ، در غیر این صورت اسکریپت ساخت اجرا نمی شود.
  1. یک تصویر Docker بسازید.
  2. سپس آن را به رجیستری کانتینر Gitlab فشار دهید.

کار فقط در صورت فشار آوردن یک برچسب انجام می شود. یک پرونده config. json با اعتبارنامه رجیستری کانتینر مورد نیاز GitLab مورد نیاز از متغیرهای CI/CD از پیش تعریف شده Gitlab CI/CD ارائه شده است. اینها به طور خودکار توسط ابزار Kaniko خوانده می شوند.

در مرحله آخر ، Kaniko از Dockerfile در زیر فهرست اصلی پروژه استفاده می کند ، تصویر Docker را می سازد و ضمن برچسب زدن آن با برچسب GIT ، آن را به رجیستری کانتینر پروژه می برد:

   اگر در برابر پروکسی وابستگی تأیید می کنید ، باید متغیرهای CI/CD مربوطه را برای تأیید اعتبار به پرونده Config. Json اضافه کنید:
":<"auth":"$(printf "%s:%s" "$" "$" | base64 | tr -d '
')">،  "$ CI_DENDENCENCE_PROXY_SERVER ":<"auth":"$(printf "%s:%s" $"$" | base64 | tr -d '
')">>>">/kaniko/. docker/config. json 

ساختن تصویری با Kaniko در پشت یک پروکسی

  • با عبور از متغیرهای محیط زیست http_proxy به عنوان آرگومان های ساخت ، بنابراین دستورالعمل های dockerfile می توانند هنگام ساخت تصویر از پروکسی استفاده کنند.

مثال قبلی را می توان به شرح زیر گسترش داد:

     

می توانید با استفاده از ابزار مانیفست ، تصاویر چند قوس را در داخل یک ظرف بسازید.

برای یک راهنمای دقیق در مورد نحوه ساخت یک تصویر چند قوسی ، ساخت یک تصویر کانتینر چند قوس را در ظروف غیرمجاز بخوانید.

با استفاده از رجیستری با گواهی سفارشی

هنگام تلاش برای فشار به رجیستری Docker که از گواهی نامه ای که توسط CA سفارشی امضا شده است استفاده می کند ، ممکن است خطای زیر را دریافت کنید:

/kaniko/مجری 

این را می توان با افزودن گواهینامه CA خود به فروشگاه گواهی Kaniko حل کرد:

 >/kaniko/ssl/certs/additional-ca-cert-bundle. crt 

پیاده روی ویدیویی یک مثال کار

  • gitlab.com دوندگان مشترک
  • مجری Ruer Kubeetes

مثال را می توان در گروه یا نمونه خود برای آزمایش کپی کرد. جزئیات بیشتر در مورد آنچه سایر الگوهای Gitlab CI نشان داده شده است در صفحه پروژه موجود است.

عیب یابی

خطای 403: "خطای بررسی مجوزهای فشار"

اگر این خطا را دریافت کردید ، ممکن است به دلیل یک پروکسی خارجی باشد. تنظیم متغیرهای محیط http_proxy و https_proxy می توانند مشکل را برطرف کنند.

کمک و بازخورد

اسناد

این صفحه را ویرایش کنید تا یک خطا برطرف شود یا در یک درخواست ادغام بهبود یابد. یک مسئله ایجاد کنید تا پیشرفت در این صفحه را پیشنهاد کنید. برای بررسی و بازخورد در مورد این صفحه نظرات را نشان داده و ارسال کنید.

تولید - محصول

اگر چیزی وجود دارد که در مورد این ویژگی دوست ندارید ، مسئله ای ایجاد کنید. با ارسال درخواست ویژگی ، عملکرد را پیشنهاد دهید. برای کمک به شکل دادن به ویژگی های جدید ، به نگاه اول بپیوندید.

در دسترس بودن ویژگی ها و آزمایشات محصول

قیمت گذاری را مشاهده کنید تا تمام ردیف ها و ویژگی های Gitlab یا به روزرسانی را ببینید. GitLab را به صورت رایگان با دسترسی به همه ویژگی ها به مدت 30 روز امتحان کنید.

کمک بگیر

اگر آنچه را که به دنبال آن بودید پیدا نکردید ، اسناد را جستجو کنید.

اگر می خواهید در مورد چیز خاصی کمک کنید و می توانید از پشتیبانی جامعه استفاده کنید ، در انجمن GitLab ارسال کنید.

برای مشکلات تنظیم یا استفاده از این ویژگی (بسته به اشتراک GitLab).

استراتژی برای تحلیل فاندمنتال...
ما را در سایت استراتژی برای تحلیل فاندمنتال دنبال می کنید

برچسب : نویسنده : سعید شیخ‌زاده بازدید : <-PostHit-> تاريخ : جمعه 9 تير 1402 ساعت: 15:52