نحوه میزبانی نمودارهای Helm در رجیستری کانتینر GitHub

Summarize this content to 400 words in Persian Lang
اخیراً، من بیشتر با مدیریت برنامه در محیط های Kubernetes کار می کنم، که باعث شد عمیقاً در مورد مدیریت نمودار Helm فکر کنم. امروز، من به شما نشان خواهم داد که چگونه با استفاده از GitHub Container Registry (GHCR) نمودارهای Helm را میزبانی کنید. چیزی که GHCR را به ویژه جذاب می کند، ویژگی رجیستری خصوصی رایگان آن است که آن را به گزینه ای ایده آل برای پروژه های شخصی یا همکاری های تیمی کوچک تبدیل می کند.
پیش نیازها
شما نیاز دارید:
هلم
یک حساب GitHub با یک رمز دسترسی شخصی کلاسیک
توکن شما نیاز دارد write:packages دامنه
توجه: مجوزهای دقیق در حال حاضر برای GHCR پشتیبانی نمی شوند
نمودار نمونه ما
برای این آموزش، از یک نمودار مینیمالیستی استفاده می کنیم که a را ایجاد می کند hello-world فضای نام در اینجا ساختار نمودار ما آمده است:
charts/hello-world/
├── Chart.yaml
├── templates/
│ └── namespace.yaml
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
# Chart.yaml
apiVersion: v2
name: hello-world
description: A simple Helm chart that creates hello-world namespace
type: application
version: 0.1.0
appVersion: “1.0.0”
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
# templates/namespace.yaml
apiVersion: v1
kind: Namespace
metadata:
name: hello-world
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
انتشار در GHCR
1. وارد رجیستری کانتینر GitHub شوید
ابتدا با استفاده از Helm CLI وارد شوید:
helm registry login ghcr.io -u YOUR_GITHUB_USERNAME
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
هنگامی که از شما خواسته شد، رمز دسترسی شخصی (PAT) خود را به عنوان رمز عبور وارد کنید.
2. نمودار خود را بسته بندی کنید
helm package charts/hello-world
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
این باعث ایجاد یک hello-world-0.1.0.tgz فایل
3. به GHCR فشار دهید
helm push hello-world-0.1.0.tgz oci://ghcr.io/YOUR_GITHUB_USERNAME
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
همین! ساده و سرراست.
استفاده از نمودار منتشر شده شما
برای نصب نمودار از GHCR:
helm install hello-world oci://ghcr.io/YOUR_GITHUB_USERNAME/hello-world –version 0.1.0
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
پاکسازی
پس از تست، می توانید با این دستورات پاک کنید:
# Uninstall the Helm release
helm uninstall hello-world
# Delete the created namespace
kubectl delete namespace hello-world
# Remove the local package file
rm hello-world-0.1.0.tgz
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
چرا GHCR؟
GitHub Container Registry چندین مزیت را ارائه می دهد:
ثبت خصوصی رایگان
ادغام یکپارچه GitHub برای مدیریت آسان تر
سازگاری استاندارد OCI
علاوه بر این، داشتن نمودارهای Helm و کد منبع در یک اکوسیستم، گردش کار DevOps شما را ساده میکند. توانایی مدیریت دسترسی از طریق رابط آشنای GitHub یک امتیاز قابل توجه برای تیم هایی است که قبلاً از GitHub برای کارهای توسعه خود استفاده می کردند.
بسته بندی
میزبانی نمودارهای Helm در GitHub Container Registry یک فرآیند ساده است که راه حلی قوی برای مدیریت نمودار ارائه می دهد. چه در حال کار بر روی پروژه های شخصی یا همکاری با یک تیم کوچک باشید، GHCR یک پلت فرم قابل اعتماد و مقرون به صرفه برای نمودارهای Helm شما ارائه می دهد.
آن را امتحان کنید و به من بگویید که چگونه برای مورد استفاده شما کار می کند! می توانید تجربیات خود را به اشتراک بگذارید یا سوالات خود را در نظرات زیر بپرسید.
اخیراً، من بیشتر با مدیریت برنامه در محیط های Kubernetes کار می کنم، که باعث شد عمیقاً در مورد مدیریت نمودار Helm فکر کنم. امروز، من به شما نشان خواهم داد که چگونه با استفاده از GitHub Container Registry (GHCR) نمودارهای Helm را میزبانی کنید. چیزی که GHCR را به ویژه جذاب می کند، ویژگی رجیستری خصوصی رایگان آن است که آن را به گزینه ای ایده آل برای پروژه های شخصی یا همکاری های تیمی کوچک تبدیل می کند.
پیش نیازها
شما نیاز دارید:
- هلم
- یک حساب GitHub با یک رمز دسترسی شخصی کلاسیک
- توکن شما نیاز دارد
write:packages
دامنه - توجه: مجوزهای دقیق در حال حاضر برای GHCR پشتیبانی نمی شوند
- توکن شما نیاز دارد
نمودار نمونه ما
برای این آموزش، از یک نمودار مینیمالیستی استفاده می کنیم که a را ایجاد می کند hello-world
فضای نام در اینجا ساختار نمودار ما آمده است:
charts/hello-world/
├── Chart.yaml
├── templates/
│ └── namespace.yaml
# Chart.yaml
apiVersion: v2
name: hello-world
description: A simple Helm chart that creates hello-world namespace
type: application
version: 0.1.0
appVersion: "1.0.0"
# templates/namespace.yaml
apiVersion: v1
kind: Namespace
metadata:
name: hello-world
انتشار در GHCR
1. وارد رجیستری کانتینر GitHub شوید
ابتدا با استفاده از Helm CLI وارد شوید:
helm registry login ghcr.io -u YOUR_GITHUB_USERNAME
هنگامی که از شما خواسته شد، رمز دسترسی شخصی (PAT) خود را به عنوان رمز عبور وارد کنید.
2. نمودار خود را بسته بندی کنید
helm package charts/hello-world
این باعث ایجاد یک hello-world-0.1.0.tgz
فایل
3. به GHCR فشار دهید
helm push hello-world-0.1.0.tgz oci://ghcr.io/YOUR_GITHUB_USERNAME
همین! ساده و سرراست.
استفاده از نمودار منتشر شده شما
برای نصب نمودار از GHCR:
helm install hello-world oci://ghcr.io/YOUR_GITHUB_USERNAME/hello-world --version 0.1.0
پاکسازی
پس از تست، می توانید با این دستورات پاک کنید:
# Uninstall the Helm release
helm uninstall hello-world
# Delete the created namespace
kubectl delete namespace hello-world
# Remove the local package file
rm hello-world-0.1.0.tgz
چرا GHCR؟
GitHub Container Registry چندین مزیت را ارائه می دهد:
- ثبت خصوصی رایگان
- ادغام یکپارچه GitHub برای مدیریت آسان تر
- سازگاری استاندارد OCI
علاوه بر این، داشتن نمودارهای Helm و کد منبع در یک اکوسیستم، گردش کار DevOps شما را ساده میکند. توانایی مدیریت دسترسی از طریق رابط آشنای GitHub یک امتیاز قابل توجه برای تیم هایی است که قبلاً از GitHub برای کارهای توسعه خود استفاده می کردند.
بسته بندی
میزبانی نمودارهای Helm در GitHub Container Registry یک فرآیند ساده است که راه حلی قوی برای مدیریت نمودار ارائه می دهد. چه در حال کار بر روی پروژه های شخصی یا همکاری با یک تیم کوچک باشید، GHCR یک پلت فرم قابل اعتماد و مقرون به صرفه برای نمودارهای Helm شما ارائه می دهد.
آن را امتحان کنید و به من بگویید که چگونه برای مورد استفاده شما کار می کند! می توانید تجربیات خود را به اشتراک بگذارید یا سوالات خود را در نظرات زیر بپرسید.