เครื่องมือสำหรับนักพัฒนา · Docker เรียกใช้ตัวแปลงการเขียน Docker
--restart, --name และ --hostname กลายเป็นการตั้งค่าบริการเขียนอย่างไร
· มันทำงานอย่างไร
docker เขียน รีสตาร์ทนโยบาย
แฟล็กเล็กๆ สองสามตัวจะตัดสินว่าคอนเทนเนอร์จะรอดจากการรีบูตหรือไม่ และเรียกว่าอะไร โพสต์นี้จะอธิบายนโยบายการรีสตาร์ททั้งสี่นโยบายและคีย์การตั้งชื่อ และสิ่งที่เปลี่ยนแปลงไปเมื่อ Compose จัดการนโยบายเหล่านั้น
ไม่มีอะไรกลับมาอีกหลังจากการตัดไฟ — การเรียกใช้นักเทียบท่ามี --restart เว้นแต่จะหยุดลง ไฟล์เขียนใหม่ไม่ได้หยุดทำงาน
ไม่มีอะไรกลับมาอีกหลังจากการตัดไฟ — การเรียกใช้นักเทียบท่ามี --restart เว้นแต่ว่าจะหยุดลง ไฟล์ Compose ใหม่ไม่ได้หยุดทำงาน หลักฐาน: การละเว้น --restart จะลบนโยบายที่ได้รับคำสั่งนั้นออกจากบริการ สร้างการตั้งชื่อรีสตาร์ทด้วยตัวอักษรแบบใช้แล้วทิ้ง จับคู่แหล่งที่มาแต่ละรายการกับการรีสตาร์ทชื่อโฮสต์คอนเทนเนอร์ สำรอง daemon และการชนกันของชื่อเพื่อตรวจสอบปลายทาง
เหตุการณ์นโยบายการรีสตาร์ทยังเผยให้เห็นว่า ขอบเขตเหตุการณ์นโยบายการรีสตาร์ทแยกต่างหากคือ --name เขียน container_name และยังส่งผลต่อรหัสบริการด้วย หลักฐาน: --name เขียน container_name และยังส่งผลต่อรหัสบริการด้วย ข้อจำกัดในการตั้งชื่อการรีสตาร์ทนี้เป็นจุดหยุด ตรวจสอบการรีสตาร์ทชื่อโฮสต์ชื่อคอนเทนเนอร์โดยไม่มีพฤติกรรมการผลิต จากนั้นบันทึกการตรวจสอบโฮสต์เพื่อหาดีมอนและความขัดแย้งของชื่อ
นโยบายการรีสตาร์ททั้งสี่แบบ — ไม่, เมื่อล้มเหลวพร้อมตัวเลือกการนับการลองใหม่, เสมอและยกเว้นว่าหยุด และวิธีที่ daemon นำไปใช้ตอนบูต
นโยบายการรีสตาร์ททั้งสี่แบบ — ไม่, เมื่อล้มเหลวพร้อมตัวเลือกการนับการลองใหม่, เสมอและยกเว้นว่าหยุด และวิธีที่ daemon นำไปใช้ตอนบู๊ต หลักฐาน: ค่าการรีสตาร์ทครั้งล่าสุดชนะและการนับความล้มเหลวจะได้รับบันทึกการย้าย ติดตามรีสตาร์ทโทเค็นการตั้งชื่อไปยังรีสตาร์ทชื่อโฮสต์คอนเทนเนอร์ แยกค่าที่เรียงลำดับออกจากฟิลด์ค่าสุดท้าย การชนกันของ daemon และชื่ออยู่นอกคอลเล็กชัน
ขอบเขตกลไกนโยบายการรีสตาร์ทที่เกี่ยวข้องคือ ขอบเขตไวยากรณ์ของนโยบายการรีสตาร์ทที่แยกต่างหากคือ --hostname เขียนชื่อโฮสต์โดยไม่ยืนยันพฤติกรรม DNS หลักฐาน: --hostname เขียนชื่อโฮสต์โดยไม่ยืนยันพฤติกรรม DNS ใช้ข้อเท็จจริงในการตั้งชื่อการรีสตาร์ทนี้เพื่อคาดการณ์สมาชิกหนึ่งรายหรือสเกลาร์ในการรีสตาร์ทชื่อโฮสต์ชื่อคอนเทนเนอร์ ตรวจสอบคำเตือนก่อนที่จะตัดสินใจอะไรเกี่ยวกับ daemon และความขัดแย้งของชื่อ
รีสตาร์ท: ในการเขียน — ค่าเดียวกัน และเหตุใดนอกจากหยุดและแตกต่างเสมอหลังจากหยุดนักเทียบท่าอย่างชัดเจนเท่านั้น
รีสตาร์ท: ในการเขียน — ค่าเดียวกัน และเหตุใดนอกจากหยุดและแตกต่างเสมอหลังจากหยุดนักเทียบท่าอย่างชัดเจนเท่านั้น หลักฐาน: ลักษณะการบูตของ daemon ไม่ได้ถูกจำลองโดยการแปลง ผู้พิพากษารีสตาร์ทการตั้งชื่อซีเรียลไลซ์จากโมเดล การอ้างถึงชื่อโฮสต์การรีสตาร์ท container_name จะปกป้องประเภทต่างๆ แต่ไม่มีการพิสูจน์การดำเนินการสำหรับ daemon และการขัดแย้งกันของชื่อ
การสังเกตการทำให้เป็นอนุกรมของนโยบายการรีสตาร์ทครั้งที่สองคือ ขอบเขตเอาต์พุตนโยบายการรีสตาร์ทที่แยกต่างหากคือตัวอย่างสามารถแสดงชื่อการรีสตาร์ทและเครือข่ายภายนอกร่วมกัน หลักฐาน: ตัวอย่างสามารถแสดงชื่อรีสตาร์ทและเครือข่ายภายนอกร่วมกันได้ ผลลัพธ์การตั้งชื่อการรีสตาร์ทนี้จะแยกการตั้งค่าออกจากบริบทที่ไม่พร้อมใช้งาน ให้รีสตาร์ทชื่อโฮสต์ของ container_name ที่สามารถตรวจสอบได้ และตรวจสอบ daemon และความขัดแย้งของชื่อโดยแยกจากกัน
--name ถึง container_name — สิ่งที่คุณได้รับ (ชื่อที่คาดเดาได้) และสิ่งที่คุณสูญเสีย (การปรับขนาดและการขัดแย้งของชื่อ)
--name ถึง container_name — สิ่งที่คุณได้รับ (ชื่อที่คาดเดาได้) และสิ่งที่คุณสูญเสีย (การปรับขนาดและการขัดแย้งของชื่อ) หยุดที่ข้อยกเว้นการตั้งชื่อรีสตาร์ทแทนที่จะคาดเดา การเพิ่มใดๆ เมื่อใกล้รีสตาร์ทชื่อโฮสต์คอนเทนเนอร์_ชื่อ จำเป็นต้องมีเหตุผลเฉพาะการปรับใช้ที่เชื่อมโยงกับดีมอนและการขัดแย้งกันของชื่อ
ข้อจำกัดข้อยกเว้นนโยบายการรีสตาร์ทอีกประการหนึ่งคือ ขอบเขตข้อยกเว้นนโยบายการรีสตาร์ทที่แยกต่างหากคือ การกู้คืนความสมบูรณ์ขึ้นอยู่กับ _on และนโยบาย orchestrator จะไม่ถูกอนุมาน หลักฐาน: การฟื้นฟูสุขภาพขึ้นอยู่กับและไม่ได้อนุมานถึงนโยบายของผู้จัดทำ เก็บคำสั่งการตั้งชื่อรีสตาร์ทเดิมไว้ข้างคำเตือน การเปรียบเทียบจะแสดงว่าการรีสตาร์ทชื่อโฮสต์ชื่อคอนเทนเนอร์ใดมีอะไรบ้าง และการตัดสินใจขัดแย้งกันของ daemon และชื่อใดที่ยังคงเป็นแบบแมนนวล
--hostname เป็นชื่อโฮสต์ — ชื่อภายในคอนเทนเนอร์ แตกต่างจากชื่อ DNS เขียนให้บริการ
--hostname เป็นชื่อโฮสต์ — ชื่อภายในคอนเทนเนอร์ แตกต่างจากชื่อ DNS เขียนให้บริการ สร้างตัวอย่างการตั้งชื่อรีสตาร์ทจากชื่อสังเคราะห์ ทำให้ทุกการรีสตาร์ทรายการชื่อโฮสต์ ชื่อโฮสต์ สามารถตรวจสอบย้อนกลับได้ โดยไม่เปิดเผยรายละเอียดการผลิต daemon และความขัดแย้งของชื่อ
ตัวอย่างนโยบายการรีสตาร์ทเดียวกันนี้แสดงให้เห็นว่า ขอบเขตตัวอย่างนโยบายการรีสตาร์ทที่แยกต่างหากคือแฟล็กการดำเนินการขนาดเล็กกลายเป็นคีย์ที่ตรวจสอบได้อย่างชัดเจน หลักฐาน: ธงการปฏิบัติงานขนาดเล็กกลายเป็นคีย์ที่ตรวจสอบได้อย่างชัดเจน ข้อเท็จจริงในการตั้งชื่อการรีสตาร์ทที่จับคู่ควรมองเห็นได้ในชื่อโฮสต์การรีสตาร์ทคอนเทนเนอร์ชื่อ บันทึกบรรทัดนั้นและหลีกเลี่ยงสมมติฐานเกี่ยวกับ daemon และการขัดแย้งกันของชื่อ
ตัวอย่างการทำงาน: การแปลงคำสั่งของคอนเทนเนอร์ระบบอัตโนมัติในบ้าน — รีสตาร์ท ชื่อ ชื่อโฮสต์ และการตั้งค่าเครือข่ายเคียงข้างกัน
ตัวอย่างการทำงาน: การแปลงคำสั่งของคอนเทนเนอร์ระบบอัตโนมัติในบ้าน — รีสตาร์ท ชื่อ ชื่อโฮสต์ และการตั้งค่าเครือข่ายเคียงข้างกัน แปลผลการตั้งชื่อการรีสตาร์ทให้เป็นชื่อโฮสต์การรีสตาร์ทคอนเทนเนอร์ชื่อโฮสต์ที่สังเกตได้หนึ่งรายการ นักเทียบท่าเป็นเจ้าของดีมอนในภายหลังและคำตัดสินการชนกันของชื่อ
การใช้ผลที่ตามมาของนโยบายการรีสตาร์ทยังแสดงขอบเขตเอฟเฟกต์นโยบายการรีสตาร์ทที่แยกต่างหากคือการละเว้น --restart จะลบนโยบายที่ได้รับคำสั่งนั้นออกจากบริการ ความรับผิดชอบในการตั้งชื่อการรีสตาร์ทแยก: การแปลงเขียนรีสตาร์ทชื่อโฮสต์คอนเทนเนอร์ ชื่อโฮสต์ พื้นที่เก็บข้อมูลลบความลับ และผู้ดำเนินการตรวจสอบ daemon และการขัดแย้งกันของชื่อ
สิ่งนี้ไม่ครอบคลุมถึง — การรีสตาร์ทตามการตรวจสุขภาพ ขึ้นอยู่กับการสั่งซื้อและการรีสตาร์ทการจัดระเบียบใน Swarm หรือ Kubernetes
สิ่งนี้ไม่ครอบคลุมถึง — การรีสตาร์ทตามการตรวจสุขภาพ ขึ้นอยู่กับการเรียงลำดับและการรีสตาร์ทการจัดการใน Swarm หรือ Kubernetes จำกัดขอบเขตการตั้งชื่อการรีสตาร์ทเพื่อรีสตาร์ทสาขาชื่อโฮสต์ของ container_name ที่แสดงที่นี่ รูปแบบใกล้เคียงและค่าเริ่มต้นไม่สามารถตอบคำถาม daemon และชื่อการชนกันได้
ขีดจำกัดขอบเขตนโยบายการรีสตาร์ทอีกหนึ่งรายการตามมาจากขอบเขตขีดจำกัดนโยบายการรีสตาร์ทที่แยกต่างหากคือค่าการรีสตาร์ทครั้งล่าสุดชนะและการนับความล้มเหลวจะได้รับบันทึกย่อความสามารถในการพกพา ถือว่าขอบเขตการตั้งชื่อการรีสตาร์ทนี้เป็นข้อยกเว้น ต้องการรีสตาร์ทชื่อโฮสต์คอนเทนเนอร์ชื่อที่ถูกต้องมากกว่าการคาดเดาเกี่ยวกับดีมอนและการชนกันของชื่อ
Takeaway: ธงขนาดเล็กมีความหมายในการดำเนินงาน — และตัวแปลงจะเก็บรักษาไว้เป็นคีย์ที่ชัดเจนที่คุณสามารถตรวจสอบได้
Takeaway: ธงขนาดเล็กมีความหมายในการดำเนินงาน — และตัวแปลงจะเก็บรักษาไว้เป็นคีย์ที่ชัดเจนที่คุณสามารถตรวจสอบได้ ตรวจสอบการรีสตาร์ทการตั้งชื่อเป็นตัวเลือกแหล่งที่มา ฟิลด์โมเดล รีสตาร์ทบรรทัดชื่อโฮสต์คอนเทนเนอร์ชื่อและคำเตือน ลบความลับก่อนที่จะตรวจสอบ daemon และความขัดแย้งของชื่อ
สุดท้าย แหล่งที่มาของนโยบายการรีสตาร์ทยืนยันขอบเขตการตัดสินใจนโยบายการรีสตาร์ทที่แยกต่างหากคือพฤติกรรมการบูต daemon ไม่ได้ถูกจำลองโดยการแปลง ปิดการตั้งชื่อรีสตาร์ทอย่างหวุดหวิด: รีสตาร์ทชื่อโฮสต์ชื่อโฮสต์เป็นตัวเลือก; ไม่รับประกันการชนกันของ daemon และชื่อ และการเทียบเท่าของเชลล์