การใช้ Library เป็น Dependency
การเชื่อมต่อไลบรารีเข้ากับแผนภูมิแอปพลิเคชัน
การใช้ Library เป็น Dependency เป็นบทเรียน Helm Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Helm Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Helm Academy มีบทเรียนทั้งหมด 4 บทเรียน
เชื่อมไลบรารีเข้ามาเป็นดีเพนเดนซี
ชาร์ตแอปพลิเคชันดึงไลบรารีเข้ามาด้วยการระบุไว้ใต้ dependencies ใน Chart.yaml เช่นเดียวกับซับชาร์ตอื่น ๆ
# Chart.yaml
dependencies:
- name: common
version: 1.x.x
repository: file://../commonชี้ไปยังแหล่งภายในเครื่องหรือระยะไกล
repository อาจเป็นเส้นทางไฟล์ระหว่างการพัฒนา หรือเป็น URL แบบ HTTP หรือ OCI ในระบบจริง ทั้งสองแบบจะนำเทมเพลตของไลบรารีเข้ามาในชาร์ตของคุณ
repository: https://charts.bitnami.com/bitnami
# or file://../commonนำเข้าด้วย dependency update
เรียกใช้ helm dependency update เพื่อดึงไลบรารีมาไว้ในไดเรกทอรีของชาร์ต และล็อกเวอร์ชันไว้ใน Chart.lock
helm dependency update .
# downloads common into charts/เทมเพลตรวมอยู่ในเนมสเปซเดียวกัน
เมื่อถูกนำเข้ามาแล้ว เทมเพลตที่ตั้งชื่อของไลบรารีจะเข้าร่วมในเนมสเปซเทมเพลต global ของชาร์ต คุณจึงเรียกใช้ได้ราวกับเป็นเทมเพลตที่เขียนขึ้นเอง
เรียกใช้ส่วนย่อยด้วย include
ใช้ include เพื่อเรนเดอร์เทมเพลตของไลบรารีลงในแม니เฟสต์ของคุณ ฟังก์ชันนี้จะคืนข้อความที่คุณสามารถส่งต่อให้ฟังก์ชันอื่นได้
metadata:
name: {{ include "common.fullname" . }}ส่งบริบทเสมอ
จุดหลังชื่อเทมเพลตคือ ขอบเขตที่คุณส่งให้ส่วนย่อย ควรส่งบริบทระดับราก เพื่อให้ส่วนย่อยอ่าน .Values และ .Release ได้
{{ include "common.labels" . | nindent 4 }}เลือกใช้ include แทน template
ต่างจาก template ตรงที่ include จะคืนค่าสตริง ทำให้คุณส่งผลลัพธ์ต่อไปยัง indent หรือ nindent เพื่อจัดวาง YAML ได้อย่างถูกต้อง
labels:
{{- include "common.labels" . | nindent 2 }}ไลบรารีไม่เพิ่มแม니เฟสต์
การเพิ่มดีเพนเดนซีของไลบรารีจะไม่เพิ่มทรัพยากรใด ๆ แม้แต่รายการเดียว ด้วยตัวเอง เทมเพลตของคุณเป็นผู้กำหนดว่าจะเรนเดอร์อะไรโดยเรียกใช้ส่วนย่อยของไลบรารี
เรนเดอร์ทรัพยากรทั้งรายการ
หากไลบรารีกำหนดออบเจ็กต์ทั้งรายการ ไฟล์เทมเพลตของคุณอาจมีเพียงบรรทัด include เดียวที่ส่งออก Service หรือ Deployment ที่สมบูรณ์
# templates/service.yaml
{{ include "common.service" . }}ตรวจสอบด้วย helm template
เรียกใช้ helm template กับชาร์ตแอปของคุณ เพื่อยืนยันว่าส่วนย่อยของไลบรารีได้รับการแก้ไขและสร้าง YAML ตามที่คาดไว้
helm template my-release .ล็อกเวอร์ชันไลบรารี
ล็อกดีเพนเดนซีไว้กับช่วง version ที่ทราบแน่ชัด เพื่อไม่ให้การเปลี่ยนแปลงของไลบรารีแก้ไขแม니เฟสต์ที่เรนเดอร์ใน CI อย่างเงียบ ๆ
dependencies:
- name: common
version: 2.4.0ตรวจสอบอย่างรวดเร็ว
คุณเรียกใช้ส่วนย่อยของไลบรารีและต้องการส่งผลลัพธ์ต่อผ่าน nindent ควรใช้คำสั่งใด
สรุป: การใช้ไลบรารี
ระบุไลบรารีไว้ใต้ dependencies เรียกใช้ helm dependency update จากนั้นเรียกส่วนย่อยด้วย include และส่งบริบทไปด้วย 🔗
คำถามที่พบบ่อย
บทเรียน “การใช้ Library เป็น Dependency” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “การใช้ Library เป็น Dependency” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Helm Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Helm Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “การใช้ Library เป็น Dependency”
การเชื่อมต่อไลบรารีเข้ากับแผนภูมิแอปพลิเคชัน คุณปฏิบัติ Helm Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Helm Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Helm Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน
บทเรียน “การใช้ Library เป็น Dependency” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Helm Academy นี้ได้ไหม
ได้ บทเรียน Helm Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- การประกาศประเภท Library Chart
- การส่งออก Named Templates ที่นำกลับมาใช้ใหม่ได้
- การใช้ Library เป็น Dependency
- การแทนที่ค่าเริ่มต้นของ Library ภายในเครื่อง