ไทย

เครื่องมือสำหรับนักพัฒนา · Docker เรียกใช้ตัวแปลงการเขียน Docker

วอลุ่มใน docker run vs Compose: การเชื่อมเมานต์ โวลุ่มที่มีชื่อ และ :ro

· มันทำงานอย่างไร

docker เขียน เล่ม

แผนภาพนามธรรมที่แสดงโวลุ่มในการเรียกใช้นักเทียบท่าเทียบกับการเขียน: การผูกเมานต์ โวลุ่มที่มีชื่อ และ :ro
ภาพประกอบเวกเตอร์ต้นฉบับ ToolAcre

แฟล็ก -v อาจหมายถึงสามสิ่งที่แตกต่างกัน ขึ้นอยู่กับสิ่งที่เหลืออยู่ในโคลอน โพสต์นี้จะอธิบายการเมานต์การผูก วอลลุมที่มีชื่อ และวอลลุมที่ไม่ระบุชื่อ และวิธีที่แต่ละอันกลายเป็น YAML

ฐานข้อมูลกลับมาว่างเปล่า - คอนเทนเนอร์ถูกสร้างขึ้นใหม่และแฟล็ก -v ไม่เคยอ้างถึงสถานที่บนดิสก์ที่ยังคงอยู่

ฐานข้อมูลกลับมาว่างเปล่า คอนเทนเนอร์ถูกสร้างขึ้นใหม่และแฟล็ก -v ไม่เคยอ้างถึงตำแหน่งบนดิสก์ที่ยังคงอยู่ หลักฐาน: ค่า -v เฉพาะเป้าหมายจะไม่ระบุชื่อและได้รับคำเตือนการคงอยู่ สร้างการคงอยู่ของปริมาตรด้วยตัวอักษรแบบใช้แล้วทิ้ง จับคู่แหล่งที่มาแต่ละรายการกับปริมาณบริการและการประกาศที่มีชื่อ สำรองการจำแนกแหล่งที่มาและเส้นทางสำหรับการตรวจสอบปลายทาง

เหตุการณ์เกี่ยวกับไดรฟ์ข้อมูลยังเผยให้เห็นว่า ขอบเขตเหตุการณ์ของไดรฟ์ข้อมูลแยกต่างหากคือ --mount มีการใช้งานอย่างถูกต้อง แต่รายงานว่าไม่ได้รับการสนับสนุน หลักฐาน: --mount มีการใช้งานอย่างถูกต้อง แต่รายงานว่าไม่รองรับ ข้อจำกัดการคงอยู่ของปริมาตรนี้คือจุดหยุด ตรวจสอบปริมาณการบริการและการประกาศที่มีชื่อโดยไม่มีพฤติกรรมการผลิต จากนั้นจัดทำเอกสารการตรวจสอบโฮสต์สำหรับการจำแนกประเภทและเส้นทางของแหล่งที่มา

ความหมายสามประการของ -v — เส้นทางสัมบูรณ์ (bind mount), ชื่อ (วอลุ่มที่มีชื่อ) หรือไม่มีเลยก่อนเครื่องหมายทวิภาค (วอลุ่มที่ไม่ระบุชื่อ)

ความหมายสามประการของ -v — เส้นทางสัมบูรณ์ (bind mount), ชื่อ (วอลุ่มที่มีชื่อ) หรือไม่มีเลยก่อนเครื่องหมายโคลอน (วอลุ่มที่ไม่ระบุชื่อ) หลักฐาน: ชื่ออย่างง่าย เส้นทางโฮสต์ เส้นทางสัมพัทธ์ ตัวแปร และไดรฟ์ Windows ได้รับการจำแนกที่แตกต่างกัน ติดตามโทเค็นการคงอยู่ของไดรฟ์ข้อมูลไปยังไดรฟ์ข้อมูลบริการและการประกาศที่มีชื่อ แยกค่าที่เรียงลำดับออกจากฟิลด์ค่าสุดท้าย การจำแนกแหล่งที่มาและเส้นทางอยู่นอกการรวบรวม

ขอบเขตกลไกวอลุ่มที่เกี่ยวข้องคือ ขอบเขตไวยากรณ์วอลุ่มที่แยกจากกันคือทั้ง pgdata และการเชื่อมโยง init แบบอ่านอย่างเดียวยังคงเป็นสตริงวอลุ่มตามตัวอักษร หลักฐาน: ทั้ง pgdata และการผูก init แบบอ่านอย่างเดียวยังคงเป็นสตริงวอลุ่มตามตัวอักษร ใช้ข้อเท็จจริงเกี่ยวกับปริมาณการคงอยู่นี้เพื่อคาดการณ์สมาชิกหนึ่งรายหรือสเกลาร์ในปริมาณบริการและการประกาศที่มีชื่อ ตรวจสอบคำเตือนก่อนที่จะตัดสินใจอะไรเกี่ยวกับการจำแนกประเภทและเส้นทางของแหล่งที่มา

วอลลุมที่มีชื่อต้องมีการประกาศ — วอลลุมระดับบนสุด: คีย์ที่ Compose ต้องการ และจะเกิดอะไรขึ้นเมื่อหายไป

วอลลุมที่มีชื่อต้องมีการประกาศ — วอลลุมระดับบนสุด: คีย์ที่ Compose ต้องการ และจะเกิดอะไรขึ้นเมื่อหายไป หลักฐาน: แหล่งที่มาที่มีชื่อได้รับการประกาศเป็นโมฆะในปริมาณระดับบนสุด ตัดสินการต่อเนื่องของปริมาตรจากแบบจำลอง การอ้างอิงในปริมาณบริการและการประกาศที่มีชื่อจะปกป้องประเภทต่างๆ แต่ไม่มีหลักฐานการปฏิบัติงานสำหรับการจำแนกประเภทและเส้นทางของแหล่งที่มา

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

ตัวแปลงจะรักษาไวยากรณ์สั้น ๆ ของ -v และเตือนว่า --mount ต้องแปลด้วยมือ

ตัวเลือกหลังโคลอนที่สอง — ro, z และ Z และรูปแบบ key=value ของ --mount พูดในสิ่งเดียวกันอย่างไร หลักฐาน: --mount มีการใช้งานอย่างถูกต้อง แต่รายงานว่าไม่รองรับ ตัวแปลงจะรักษาไวยากรณ์สั้น -v และเตือนว่า --mount ต้องแปลด้วยมือ หยุดที่ข้อยกเว้นการคงอยู่ของระดับเสียงแทนที่จะคาดเดา การเพิ่มใดๆ ที่ใกล้กับปริมาณบริการและการประกาศที่ระบุชื่อจำเป็นต้องมีเหตุผลเฉพาะการปรับใช้งานซึ่งเชื่อมโยงกับการจัดหมวดหมู่และเส้นทางของแหล่งที่มา

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

ตัวอย่างการทำงาน: -v pgdata:/var/lib/postgresql/data และ -v /srv/pg/init:/docker-entrypoint-initdb.d:ro — ทั้งสองเมานต์เป็น Compose YAML

ตัวอย่างการทำงาน: -v pgdata:/var/lib/postgresql/data และ -v /srv/pg/init:/docker-entrypoint-initdb.d:ro — ทั้งคู่เมานต์เป็น Compose YAML สร้างตัวอย่างการคงอยู่ของไดรฟ์ข้อมูลจากชื่อสังเคราะห์ ทำให้ทุกปริมาณการบริการและรายการการประกาศที่มีชื่อสามารถตรวจสอบย้อนกลับได้ โดยไม่เปิดเผยรายละเอียดการจัดหมวดหมู่และเส้นทางของแหล่งที่มาของการผลิต

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

ความหมายพาธสัมพัทธ์ขึ้นอยู่กับตำแหน่งไฟล์เขียนในที่สุด ตัวแปลงไม่สามารถแก้ไขได้

เส้นทางสัมพัทธ์ — อนุญาตในการเขียนโดยสัมพันธ์กับไฟล์ ไม่ใช่ในการทำงานของนักเทียบท่า ซึ่งเป็นสาเหตุที่ ./ ปรากฏหลังจากการแปลงเท่านั้น หลักฐาน: สตริงสัมพัทธ์จะถูกเก็บรักษาไว้โดยไม่ต้องแก้ไขไดเร็กทอรีการเขียนในอนาคต ความหมายพาธสัมพัทธ์ขึ้นอยู่กับตำแหน่งไฟล์เขียนในที่สุด ตัวแปลงไม่สามารถแก้ไขได้ แปลผลการคงอยู่ของไดรฟ์ข้อมูลเป็นปริมาณบริการที่สังเกตได้หนึ่งรายการและความแตกต่างในการประกาศที่มีชื่อ นักเทียบท่าเป็นเจ้าของการจำแนกแหล่งที่มาและคำตัดสินเส้นทางในภายหลัง

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

สิ่งนี้ไม่ครอบคลุมถึง - ไดรเวอร์โวลุ่ม, NFS- โวลุ่มที่สำรองไว้ และการเมานต์ tmpfs ซึ่งมีคีย์ของตัวเอง

สิ่งนี้ไม่ครอบคลุมถึง - ไดรเวอร์โวลุ่ม, NFS- โวลุ่มที่สำรองไว้ และการเมานต์ tmpfs ซึ่งมีคีย์ของตัวเอง หลักฐาน: --tmpfs แมปแยกกันในขณะที่ไดรเวอร์โวลุ่มต้องการการกำหนดค่าด้วยตนเอง จำกัดขอบเขตการคงอยู่ของไดรฟ์ข้อมูลไว้ที่ปริมาณบริการและสาขาการประกาศที่มีชื่อที่แสดงไว้ที่นี่ แบบฟอร์มใกล้เคียงและค่าเริ่มต้นไม่สามารถตอบคำถามการจัดหมวดหมู่และเส้นทางของแหล่งที่มาได้

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

สิ่งสำคัญ: รู้ว่าคุณมีอันไหนในสามอัน และตัวแปลงจะจัดวางรายการวอลุ่มเพื่อให้คุณสามารถตรวจสอบแต่ละรายการได้

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

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