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

การแทนที่ค่าเริ่มต้นของ Library ภายในเครื่อง

การปรับแต่งแม่แบบที่ใช้ร่วมกันสำหรับผู้ใช้แต่ละราย

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

ใช้ร่วมกันได้แต่ไม่ตายตัว

ไลบรารีที่ดีจะกำหนดค่าเริ่มต้นที่เหมาะสม พร้อมเปิดให้ผู้ใช้แต่ละรายปรับแก้ได้ ตัวควบคุมหลักคือ ค่าที่ส่วนย่อยอ่านขณะเรนเดอร์

ควบคุมพฤติกรรมด้วยค่า

เนื่องจากส่วนย่อยอ่าน .Values ชาร์ตของคุณจึงปรับแต่งผลลัพธ์ที่ใช้ร่วมกันได้ง่าย ๆ เพียงกำหนดคีย์เหล่านั้นใน values.yaml ของตัวเอง

# your values.yaml
image:
  repository: nginx
  tag: "1.27"

ไลบรารีพึ่งพาค่าเริ่มต้น

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

replicas: {{ .Values.replicaCount | default 1 }}

แทนที่เฉพาะคีย์นั้น

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

# your values.yaml
replicaCount: 3

แทนที่เทมเพลตย่อยทั้งชุด

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

{{- define "common.labels" -}}
team: payments
{{- end -}}

นิยามล่าสุดมีผล

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

ครอบแทนการแทนที่

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

{{- define "app.labels" -}}
{{ include "common.labels" . }}
tier: backend
{{- end -}}

ส่งผ่านขอบเขตแบบกำหนดเอง

แทนที่จะส่งจุดราก ให้ส่งบริบทที่จำกัดขอบเขตแก่เทมเพลตย่อย เพื่อให้เทมเพลตอ่านค่าจากส่วนย่อยของค่าของคุณและปรับรูปแบบผลลัพธ์ในการเรียกแต่ละครั้ง

{{ include "common.resources" .Values.web }}

สร้างบริบทที่ผสานกัน

หากต้องการควบคุมได้ละเอียดขึ้น ให้สร้างพจนานุกรมที่ผสมจุดรากกับค่าที่แทนที่ แล้วส่งพจนานุกรมนั้นเข้าไป เทมเพลตย่อยจะเห็นเฉพาะค่าที่คุณประกอบขึ้น

{{ include "common.tpl" (dict "top" . "name" "web") }}

ยืนยันว่าการแทนค่ามีผล

หลังจากแทนค่าแล้ว ให้เรียกใช้ helm template ทุกครั้งเพื่อตรวจสอบว่าค่าหรือเทมเพลตย่อยที่กำหนดนิยามใหม่สร้างแมนนิเฟสต์ตามที่คุณต้องการ

helm template my-release . | grep replicas

จำกัดการแทนค่าให้เล็กที่สุด

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

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

ชาร์ตของคุณและไลบรารีต่างก็กำหนด common.labels แล้ว Helm จะใช้คำจำกัดความใด

ทบทวน: การแทนค่าเฉพาะที่

ปรับแต่งไลบรารีโดยเริ่มจากค่าก่อน กำหนดนิยามใหม่หรือครอบเทมเพลตย่อยเมื่อจำเป็น ส่งขอบเขตแบบกำหนดเอง แล้วตรวจสอบด้วย helm template ✅

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

บทเรียน “การแทนที่ค่าเริ่มต้นของ Library ภายในเครื่อง” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “การแทนที่ค่าเริ่มต้นของ Library ภายในเครื่อง”

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

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

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

บทเรียน “การแทนที่ค่าเริ่มต้นของ Library ภายในเครื่อง” ใช้เวลานานแค่ไหน

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

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

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

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

  1. การประกาศประเภท Library Chart
  2. การส่งออก Named Templates ที่นำกลับมาใช้ใหม่ได้
  3. การใช้ Library เป็น Dependency
  4. การแทนที่ค่าเริ่มต้นของ Library ภายในเครื่อง
← กลับไปที่ Helm Academy