GitHub Project:
[ Ссылка ]
website:
sananetco.com
instagram:
instagram.com/networkscomputing
وقتی از ArgoCD و GitLab CI با هم استفاده میکنی، انگار داری دو ابزار قوی رو به بهترین شکل ترکیب میکنی. GitLab CI میاد و بخش "ساخت" یا همون Build اپلیکیشن رو انجام میده. یعنی مثلاً کدهایی که تو توی ریپازیتوری گیتلبت نوشتی رو برمیداره، اونها رو کامپایل میکنه، تستها رو اجرا میکنه و در نهایت یه چیزی مثل یه ایمیج داکر میسازه و اون رو توی یه رجیستری (مثل Docker Hub یا GitLab Container Registry) ذخیره میکنه.
حالا کار که به اینجا رسید، نوبت ArgoCD میشه. ArgoCD توی سمت Deploy میاد و با استفاده از اون ایمیجی که ساخته شده، اپلیکیشن رو میبره روی کلاستر Kubernetes و دیپلوی میکنه. اونم با استفاده از یه فایل تنظیمات (مثل Helm Chart یا Kubernetes YAML) که قبلاً توی گیت تعریف کردی.
به زبان سادهتر:
GitLab CI → اپلیکیشن رو میسازه (Build)، ایمیج رو تولید میکنه.
ArgoCD → اون ایمیج رو میگیره و روی کلاستر K8S دیپلوی میکنه.
اتصال این دوتا معمولاً اینطوریه:
GitLab CI بعد از ساخت ایمیج، نسخه جدید رو توی یه ریپازیتوری گیت (مثلاً همون جایی که کدهای ArgoCD هست) کامیت میکنه یا یه tag جدید میزنه.
ArgoCD که دائم داره اون ریپازیتوری گیت رو مانیتور میکنه، متوجه تغییر میشه و خودش فرایند دیپلوی رو انجام میده.
این روش خیلی محبوبه چون:
GitLab CI کار ساخت رو سریع و خودکار انجام میده.
ArgoCD مدیریت دیپلوی و همگامسازی با کلاستر K8S رو ساده و ایمن میکنه.
خلاصه بخوای بگی، GitLab میسازه، ArgoCD دیپلوی میکنه! 😊
Ещё видео!