วิธีใช้ Healthcheck ใน Docker Compose ให้สำเร็จ

Withi Chi Healthcheck Ni Docker Compose Hi Sarec



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

บทความนี้จะแสดงวิธีการดำเนินการตรวจสอบสุขภาพในการเขียน Docker







จะใช้การตรวจสอบสุขภาพใน Docker Compose ได้อย่างไร

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



ขั้นตอนที่ 1: สร้าง Dockerfile



ขั้นแรก สร้าง Dockerfile เพื่อบรรจุแอปพลิเคชันของคุณ ตัวอย่างเช่น เราได้ระบุคำแนะนำในการเทียบท่าของ “ index.html ' ไฟล์:





จาก nginx: ล่าสุด
คัดลอก index.html / ยูเอสอาร์ / แบ่งปัน / จิงซ์ / html / index.html
จุดเริ่มต้น [ 'นิงซ์' , '-ก' , 'ภูตปิด' ]

ขั้นตอนที่ 2: สร้างไฟล์เขียน



จากนั้น สร้างไฟล์ Yaml ชื่อ “ นักเทียบท่า-compose.yml '. ไฟล์นี้มักใช้เพื่อกำหนดค่าบริการต่างๆ ของแอปพลิเคชันในคอนเทนเนอร์

ที่นี่ เราได้ใช้คำแนะนำต่อไปนี้:

  • รุ่น ” ใช้เพื่อระบุเวอร์ชันของไฟล์ที่เขียน
  • บริการ ” ใช้เพื่อกำหนดค่าบริการแอปพลิเคชันในคอนเทนเนอร์
  • เว็บ ” เป็นบริการของแอพพลิเคชั่นหรือโครงการ
  • พอร์ต ”: คีย์จัดสรรพอร์ตที่เปิดเผยของคอนเทนเนอร์:
รุ่น: '3'
บริการ:
เว็บ:
สร้าง: .
พอร์ต:
- 80 : 80

ขั้นตอนที่ 3: เปิดไฟคอนเทนเนอร์

ทำให้คอนเทนเนอร์ติดไฟโดยใช้ “ นักเทียบท่า-เขียนขึ้น ' สั่งการ:

นักเทียบท่า-เขียนขึ้น

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

ขั้นตอนที่ 4: ใช้การตรวจสุขภาพ

ในขั้นตอนถัดไป ให้แก้ไข “ นักเทียบท่า-compose.yml ” เพื่อใช้การตรวจสอบความสมบูรณ์ในคอนเทนเนอร์การเขียน เพื่อจุดประสงค์นี้ ให้ใช้คุณสมบัติต่อไปนี้:

  • ตรวจสุขภาพ ” ใช้ในการดำเนินการตรวจสุขภาพ
  • ทดสอบ ” คีย์ใช้เพื่อทดสอบคอนเทนเนอร์ เพื่อจุดประสงค์นี้ เราได้ใช้ ' ขด ” คำสั่งเพื่อรับการตอบสนองหรือสัญญาณจากโฮสต์
  • ช่วงเวลา ” ระบุระยะเวลาหรือช่วงเวลาที่กระบวนการตรวจสุขภาพจะดำเนินการ
  • หมดเวลา ” กำหนดระยะเวลารอการตรวจสุขภาพ ในกรณีเกิดข้อผิดพลาดหรืออาการผิดปกติหลังจากเวลาที่กำหนดจะคืนรหัสทางออก
  • ลองใหม่ ” ใช้เพื่อกำหนดจำนวนครั้งที่พยายามดำเนินการตรวจสอบสภาพหลังจากล้มเหลว:
รุ่น: '3'
บริการ:
เว็บ:
สร้าง: .
พอร์ต:
- 80 : 80
ตรวจสุขภาพ:
ทดสอบ: ขด --ล้มเหลว http: // โลคัลโฮสต์ || ทางออก 1
ช่วงเวลา: 30 วินาที
หมดเวลา: 10 วินาที
ลองใหม่: 5

ขั้นตอนที่ 5: เริ่มคอนเทนเนอร์

เริ่มคอนเทนเนอร์อีกครั้ง:

นักเทียบท่า-เขียนขึ้น

หลังจากช่วงเวลาที่กำหนด กระบวนการตรวจสอบความสมบูรณ์จะถูกนำไปใช้และตรวจสอบความสมบูรณ์ของคอนเทนเนอร์ตามไฮไลต์ด้านล่าง:

ขั้นตอนที่ 6: ตรวจสอบสถานะสุขภาพ

ในการตรวจสอบสภาพความสมบูรณ์ของคอนเทนเนอร์ ให้ระบุรายการคอนเทนเนอร์ที่เขียน ที่นี่ คุณสามารถดูสภาพของคอนเทนเนอร์ที่กำลังทำงานอยู่ของเรา:

นักเทียบท่าเขียน ปล -ก

ผลลัพธ์บ่งชี้ว่าคอนเทนเนอร์ของเราอยู่ในสภาพที่สมบูรณ์:

นี่คือทั้งหมดที่เกี่ยวกับการตรวจสอบสภาพความสมบูรณ์ของคอนเทนเนอร์ในการเขียน Docker

บทสรุป

หากต้องการใช้ Health Check ใน Docker-compose ขั้นแรกให้สร้าง ' นักเทียบท่า-compose.yml ” ไฟล์และกำหนดค่าบริการแอปพลิเคชัน หลังจากนั้นให้ใช้ “ ตรวจสุขภาพ ” คุณสมบัติในการดำเนินการตรวจสุขภาพ คุณสมบัตินี้ใช้คีย์ที่แตกต่างกันเพื่อดำเนินการตรวจสอบสุขภาพ เช่น “ ช่วงเวลา ”, “ หมดเวลา ”, “ ลองใหม่ ', และ ' ทดสอบ '. บทความนี้แสดงวิธีการใช้การตรวจสอบสุขภาพในการเขียน Docker