راهکار بیلد گرفتن از اپها در شرایط اختلال شبکه بینالملل
قطعی یا اختلال در شبکه بینالملل مشکلاتی برای فرایند بیلد اپها پیش میآورد. گرچه همروش همواره در تلاش هست تا ارتباط با شبکه بینالملل را برای رانرها فراهم کند، اما ممکن است در زمانهایی این محدودیت فرایند بیلد را با مشکل مواجه کند.
در همروش راهکارهایی برای مواجه با چنین شرایطی در نظر گرفتهایم. در ادامه این مقاله به بررسی این راهحل خواهیم پرداخت.
۱. مخزن کدتان را به شبکه داخلی انتقال دهید
طبیعتا در زمان قطعی اینترنت بینالملل برای ارتباط با ریپازیتوری کدتان باید مخزن کد را به داخل انتقال دهید. بنابراین پیشنهاد ما این است که در گام اول ریپازیتوری خود را به سرویس گیتلب همروش (همگیت) انتقال دهید.
۲. دارکوب را به همگیت خود متصل کنید
پس از انتقال ریپازیتوری به همگیت، باید همگیتتان را به دارکوب متصل کنید تا فرایند بیلد اپ از روی همگیت انجام شود. برای انجام این کار وارد قسمت ساخت اپ در دارکوب شوید.
اگر فرایند اتصال را درست طی کرده باشید، لیست این ریپازیتوریها از قسمت همگیت در هنگام ساخت اپ گیتی در دارکوب برایتان قابل مشاهده خواهد بود.
۳. درخواست تغییر ریپازیتوری برای اپلیکیشنتان ثبت کنید
در این مرحله از طریق تیکت با پشتیبانی همروش ارتباط بگیرید و درخواست تغییر ریپو برای اپ موردنظرتان را اعلام کنید. در نظر داشته باشید که در تیکت حتما لینک ریپو همگیت را اعلام کنید. همچنین مطمئن شوید که مرحله دوم را بهدرستی انجام دادهاید و دسترسیهای لازم به ریپو فراهم شده است.
۴. تغییرات موردنیاز را بر روی داکرفایلتان اعمال کنید
همزمان با تغییر ریپازیتوری اپلیکیشن از سمت پشتیبانی همروش، شما میتوانید تغییرات مدنظرتان را بر روی داکر فایل موجود در همگیت خود اعمال کنید. در اینجا منظور از تغییرات، حذف بخشهایی است که برای اجرا در مرحله بیلد به اینترنت بینالملل وابسته است.
همانطور که میدانید در اغلب بیلدها ما به نصب پکیچهای مشخص نیاز داریم. برای رفع این نیاز در شرایط حاضر میتوانید از راهکار زیر استفاده کنید:
۴.۱. در ابتدا کامندهای مربوط به نصب پکیج در داکرفایل را کامنت کنید.
۴.۲. برای تامین پکیجهای موردنیاز از پکیجهای موجود در بیلدهای قدیمیتر استفاده کنید.
برای انجام این کار ابتدا به اپ مورد نظرتان در دارکوب مراجعه کنید.
در قسمت اطلاعات عمومی اپ دارکوبیتان، در باکس ایمیج داکری، اطلاعات مربوط به ایمیجی را که در حال حاضر بر روی دارکوب پیاده شده مشاهده میکنید. نام ایمیج را به همراه تگ آن از قسمت آبی رنگ، باید بهعنوان ایمیج پایه در Dockerfile و جلوی کلیدواژه FROM استفاده کنیم. تصویر زیر شروع یک داکرفایل برای اپ پایتونی را قبل و بعد از این تغییرات نشان میدهد:

۴.۳. در قدم آخر فقط باید مطمئن شویم که تغییرات کد بهدرستی و کامل روی کد قبلی ایمیج پایه overwrite میشود.
نهایتا قبل و بعد یک داکرفایل پایتونی بهعنوان مثال میتواند به این شکل باشد:
قبل از اعمال تغییرات:

بعد از اعمال تغییرات:

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