ตัวช่วย 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 ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- กำหนด Partial ด้วย define
- แทรก Partial ด้วย template และ include
- ตัวช่วย Fullname และ Labels มาตรฐาน
- ส่ง Scope เข้า Named Template