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

การใช้ 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 ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

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

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