0Pricing
Helm Academy · บทเรียน

ตัวช่วย Fullname และ Labels มาตรฐาน

อ่านตัวช่วยตามแบบแผนที่ helm create จัดเตรียมไว้

ตัวช่วย Fullname และ Labels มาตรฐาน เป็นบทเรียน Helm Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Helm Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Helm Academy มีบทเรียนทั้งหมด 4 บทเรียน

ตัวช่วยที่มีให้พร้อม

ทุก chart ที่สร้างด้วย helm create จะมีไฟล์ _helpers.tpl ซึ่งเต็มไปด้วยเทมเพลตย่อยที่สร้างไว้พร้อมใช้ การรู้จักเทมเพลตเหล่านี้ช่วยให้คุณไม่ต้องสร้างชื่อและป้ายกำกับขึ้นใหม่เอง

ตัวช่วย name

เทมเพลตย่อย chart.name คืนค่าชื่อพื้นฐานของ chart และเปิดให้กำหนดค่าทับผ่าน values ได้ เทมเพลตนี้เป็นส่วนประกอบพื้นฐานของตัวช่วยอื่น ๆ

{{- define "mychart.name" -}}
{{- default .Chart.Name .Values.nameOverride -}}
{{- end -}}

ตัวช่วย fullname

เทมเพลตย่อย chart.fullname สร้างชื่อทรัพยากรที่ไม่ซ้ำกัน โดยปกติจะนำชื่อรีลีสมาต่อกับชื่อ chart เพื่อให้การติดตั้งแต่ละครั้งไม่ชนกัน

name: {{ include "mychart.fullname" . }}

เหตุใด fullname จึงตัดความยาว

ชื่อของ Kubernetes จำกัดความยาวไว้ที่ 63 อักขระ ตัวช่วย fullname จะส่งผลลัพธ์ผ่าน trunc และ trimSuffix เพื่อให้อยู่ภายในขีดจำกัดดังกล่าว

{{ ... | trunc 63 | trimSuffix "-" }}

ตัวช่วยป้ายกำกับ chart

เทมเพลตย่อย chart.chart คืนค่าสตริงชื่อพร้อมเวอร์ชันสำหรับป้ายกำกับ helm.sh/chart ซึ่งช่วยบันทึกว่า chart เวอร์ชันใดเป็นผู้สร้างทรัพยากรนั้น

helm.sh/chart: {{ include "mychart.chart" . }}

ป้ายกำกับทั่วไป

เทมเพลตย่อย chart.labels สร้างชุดป้ายกำกับที่แนะนำทั้งหมด ได้แก่ managed-by ป้ายกำกับ chart เวอร์ชัน และป้ายกำกับตัวเลือกที่รวมเข้าด้วยกัน

metadata:
  labels:
    {{- include "mychart.labels" . | nindent 4 }}

ป้ายกำกับตัวเลือกแยกต่างหาก

เทมเพลตย่อย chart.selectorLabels มีเพียงคู่ค่าที่ไม่เปลี่ยนแปลง ซึ่งใช้จับคู่กับพ็อด คู่นี้จะคงที่เพื่อไม่ให้ตัวเลือกของ Deployment เสียหาย

app.kubernetes.io/name: {{ include "mychart.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}

เหตุใดจึงมีตัวช่วยป้ายกำกับสองแบบ

ป้ายกำกับทั้งหมดรวมเวอร์ชัน ซึ่งจะเปลี่ยนไปเมื่ออัปเกรด ส่วน ป้ายกำกับตัวเลือก ต้องไม่เปลี่ยนแปลงเลย ดังนั้น Helm จึงเก็บป้ายกำกับเหล่านี้ไว้ในเทมเพลตย่อยแยกต่างหากที่มีขนาดเล็กกว่า

ตัวช่วย serviceAccountName

chart ที่สร้างขึ้นยังนิยาม chart.serviceAccountName ซึ่งเลือกชื่อบัญชีที่ถูกต้องโดยพิจารณาว่าจะมีการสร้างบัญชีขึ้นใหม่หรือไม่

serviceAccountName: {{ include "mychart.serviceAccountName" . }}

นำกลับมาใช้ใหม่ อย่าเขียนซ้ำ

เมื่อเขียนไฟล์กำหนดทรัพยากร ให้เรียกใช้ตัวช่วยมาตรฐานเหล่านี้แทนการเขียนชื่อและป้ายกำกับด้วยตนเอง คุณจะได้รับแนวปฏิบัติที่ดีของ Kubernetes โดยอัตโนมัติ

อ่านไฟล์ _helpers.tpl ของคุณ

เปิดไฟล์ที่ helm create สร้างขึ้น แล้วอ่าน define แต่ละรายการ การทำความเข้าใจเทมเพลตย่อยไม่กี่รายการนี้จะช่วยให้คุณใช้ chart ส่วนใหญ่ที่พบได้

ตรวจสอบอย่างรวดเร็ว

คุณควรอ้างอิงตัวช่วยใดใน selector.matchLabels ของ Deployment

สรุป: ตัวช่วยมาตรฐาน

คุณได้รู้จักตัวช่วย fullname ป้ายกำกับ และ selectorLabels จาก helm create แล้ว เรียกใช้ตัวช่วยเหล่านี้ในไฟล์กำหนดทรัพยากรเพื่อให้ผลลัพธ์สอดคล้องกันและเป็นไปตามรูปแบบมาตรฐาน 🏷️

คำถามที่พบบ่อย

บทเรียน “ตัวช่วย Fullname และ Labels มาตรฐาน” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “ตัวช่วย Fullname และ Labels มาตรฐาน” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Helm Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Helm Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “ตัวช่วย Fullname และ Labels มาตรฐาน”

อ่านตัวช่วยตามแบบแผนที่ helm create จัดเตรียมไว้ คุณปฏิบัติ Helm Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Helm Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Helm Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน

บทเรียน “ตัวช่วย Fullname และ Labels มาตรฐาน” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Helm Academy นี้ได้ไหม

ได้ บทเรียน Helm Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. กำหนด Partial ด้วย define
  2. แทรก Partial ด้วย template และ include
  3. ตัวช่วย Fullname และ Labels มาตรฐาน
  4. ส่ง Scope เข้า Named Template
← กลับไปที่ Helm Academy