مساعدا Fullname وLabels القياسيان
تعرّف على المساعدات التقليدية التي يوفّرها helm create
مساعدا Fullname وLabels القياسيان درس مجاني في DevOps Bootcamp على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في DevOps Bootcamp، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة DevOps Bootcamp 4 دروس في المجموع.
دوال مساعدة جاهزة
كل مخطط ينشئه helm create يأتي بملف _helpers.tpl مليء بالقوالب الجزئية الجاهزة. ومعرفة هذه القوالب توفر عليك إعادة ابتكار الأسماء والتسميات.
الدالة المساعدة name
يعيد القالب الجزئي chart.name الاسم الأساسي للمخطط، مع إتاحة تجاوزه عبر values. وهو اللبنة الأساسية لبقية القوالب.
{{- define "mychart.name" -}}
{{- default .Chart.Name .Values.nameOverride -}}
{{- end -}}الدالة المساعدة fullname
ينشئ القالب الجزئي chart.fullname اسمًا فريدًا للمورد، وعادةً ما يكون اسم الإصدار مضافًا إليه اسم المخطط، حتى لا تتعارض عمليات التثبيت أبدًا.
name: {{ include "mychart.fullname" . }}لماذا يقتطع fullname
تقتصر أسماء Kubernetes على 63 حرفًا. وتمرر الدالة المساعدة fullname النتيجة عبر trunc وtrimSuffix للبقاء ضمن هذا الحد.
{{ ... | trunc 63 | trimSuffix "-" }}دالة تسمية المخطط
يعيد القالب الجزئي chart.chart سلسلةً تتكون من اسم وإصدار لاستخدامها في التسمية helm.sh/chart. ويسجل ذلك إصدار المخطط الذي أنشأ المورد.
helm.sh/chart: {{ include "mychart.chart" . }}التسميات الشائعة
يُخرج القالب الجزئي chart.labels مجموعة التسميات الكاملة الموصى بها: managed-by، وتسمية المخطط، والإصدار، وتسميات المحدد مجتمعةً.
metadata:
labels:
{{- include "mychart.labels" . | nindent 4 }}تسميات المحدد منفصلة
يحتوي القالب الجزئي chart.selectorLabels على الزوج غير القابل للتغيير المستخدم لمطابقة الحاويات فقط. ويبقى ثابتًا حتى لا ينكسر محدد Deployment.
app.kubernetes.io/name: {{ include "mychart.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}لماذا توجد دالتان مساعدتان للتسميات
تتضمن التسميات الكاملة الإصدار، الذي يتغير عند الترقية. أما Selector labels فيجب ألا تتغير أبدًا، لذلك يحتفظ بها Helm في قالب جزئي منفصل وأصغر.
الدالة المساعدة serviceAccountName
يعرّف المخطط الذي أُنشئ تلقائيًا أيضًا chart.serviceAccountName، الذي يختار اسم الحساب المناسب استنادًا إلى ما إذا كان سيتم إنشاء حساب أم لا.
serviceAccountName: {{ include "mychart.serviceAccountName" . }}أعد الاستخدام ولا تعِد الكتابة
عند كتابة ملفات البيان، استدعِ هذه الدوال المساعدة القياسية بدلًا من كتابة الأسماء والتسميات يدويًا. وبذلك ترث أفضل ممارسات Kubernetes تلقائيًا.
اقرأ _helpers.tpl
افتح الملف الذي أنشأه helm create واقرأ كل define. إن فهم هذه القوالب الجزئية القليلة يفتح لك الطريق لفهم معظم المخططات التي ستتعامل معها.
تحقق سريع
إلى أي دالة مساعدة ينبغي أن تشير في selector.matchLabels ضمن Deployment؟
مراجعة: الدوال المساعدة القياسية
تعرّفت إلى الدوال المساعدة fullname وlabels وselectorLabels التي يوفرها helm create. استدعها في ملفات البيان للحصول على مخرجات متسقة ومألوفة. 🏷️
الأسئلة الشائعة
هل درس «مساعدا Fullname وLabels القياسيان» مجاني؟
نعم — نص درس «مساعدا Fullname وLabels القياسيان» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة DevOps Bootcamp، انتقل إلى CoddyKit PRO. تتضمن دورة DevOps Bootcamp 4 دروس في المجموع.
ماذا ستتعلم في «مساعدا Fullname وLabels القياسيان»؟
تعرّف على المساعدات التقليدية التي يوفّرها helm create تتمرن على DevOps Bootcamp مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ DevOps Bootcamp؟
لا تُشترط خبرة سابقة. DevOps Bootcamp على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.
كم من الوقت يستغرق درس «مساعدا Fullname وLabels القياسيان»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس DevOps Bootcamp هذا؟
نعم. كل درس في DevOps Bootcamp يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- تعريف Partial باستخدام define
- إدراج Partials باستخدام template وinclude
- مساعدا Fullname وLabels القياسيان
- تمرير النطاق إلى قالب مسمّى