รีจิสทรีนักเทียบท่าเป็นฟังก์ชันที่สำคัญของระบบนิเวศนักเทียบท่า รีจิสทรีนักเทียบท่าเป็นพื้นที่เก็บข้อมูลกลางหรือฮับที่ช่วยให้ผู้ใช้สามารถจัดเก็บและแบ่งปันอิมเมจคอนเทนเนอร์นักเทียบท่าได้ เมื่อใช้รีจิสทรี Docker คุณสามารถสร้าง อัปโหลด และแชร์อิมเมจคอนเทนเนอร์ของคุณได้อย่างง่ายดาย จากนั้นคุณสามารถอัปเดตและดำเนินการเปลี่ยนแปลงรูปภาพและนำไปใช้กับรูปภาพได้โดยอัตโนมัติ
อิมเมจนักเทียบท่าคือพิมพ์เขียวสำหรับการสร้างคอนเทนเนอร์ ประกอบด้วยส่วนประกอบและคำแนะนำที่จำเป็นทั้งหมดในการเรียกใช้แอปพลิเคชันหรือบริการเฉพาะ
ก่อนที่จะใช้รูปภาพ คุณต้องดาวน์โหลดรูปภาพนั้นลงในเครื่องก่อน อย่างไรก็ตาม สิ่งนี้อาจไม่มีประสิทธิภาพอย่างรวดเร็ว นี่คือจุดที่รีจิสทรี Docker เข้ามามีบทบาท คุณสามารถดาวน์โหลดรูปภาพที่คุณต้องการจากโฮสต์ใดก็ได้ที่ติดตั้ง Docker
Mirror Registry Docker คืออะไร?
มิเรอร์รีจิสทรี Docker หมายถึงสำเนาพิเศษของรีจิสทรีที่สามารถทำหน้าที่เป็นแคชหรือพร็อกซีเพื่อจัดการอิมเมจ Docker ได้อย่างรวดเร็วและมีประสิทธิภาพ
วัตถุประสงค์หลักของมิเรอร์รีจิสทรีคือเพื่อปรับปรุงประสิทธิภาพและความเร็วในการดึงและกระจายรูปภาพในสภาพแวดล้อม Docker
เมื่อคุณต้องการใช้อิมเมจ Docker คุณต้องดาวน์โหลดอิมเมจลงในเครื่องของคุณ อย่างไรก็ตาม การดาวน์โหลดรูปภาพจากอินเทอร์เน็ตซ้ำๆ อาจไม่มีประสิทธิภาพ โดยเฉพาะอย่างยิ่งเมื่อต้องจัดการกับรูปภาพขนาดใหญ่หรือในสถานการณ์ที่มีแบนด์วิธจำกัด
นี่คือจุดที่มิเรอร์รีจิสทรี Docker เข้ามามีบทบาท แทนที่จะดึงรูปภาพจากอินเทอร์เน็ตโดยตรง คุณสามารถกำหนดค่าสภาพแวดล้อม Docker ของคุณให้ดึงรูปภาพจากมิเรอร์รีจิสทรี Docker ที่อยู่ใกล้เคียงได้
กรณีการใช้งานทั่วไปคือเมื่อคุณใช้งาน Docker หลายอินสแตนซ์ ตัวอย่างเช่น หากคุณใช้ห้องปฏิบัติการที่ใช้ Docker เป็นเทคโนโลยีการจำลองเสมือน แทนที่จะให้ Docker daemon แต่ละตัวไปที่อินเทอร์เน็ตและดึงรูปภาพออกมาเมื่อจำเป็น คุณสามารถตั้งค่ามิเรอร์รีจิสทรีในเครื่องและอนุญาตให้ Docker daemons ทั้งหมดดึงรูปภาพจากมันได้ ซึ่งช่วยลดการรับส่งข้อมูลเพิ่มเติม
วิธีเรียกใช้ Docker Registry Mirror
วิธีที่ดีที่สุดในการเรียกใช้มิเรอร์รีจิสทรี Docker คือการใช้อิมเมจรีจิสทรีที่ Docker จัดเตรียมไว้ให้ อิมเมจนี้มีการใช้งานรีจิสทรี Docker ซึ่งช่วยให้คุณจัดเก็บและแจกจ่ายอิมเมจ Docker
เริ่มต้นด้วยการรันคำสั่ง “pull” เพื่อดาวน์โหลดรูปภาพดังแสดงในคำสั่งต่อไปนี้:
$ นักเทียบท่าดึงรีจิสทรี
เมื่อดาวน์โหลดรูปภาพแล้ว เราจะต้องสร้างไฟล์กำหนดค่าสำหรับมิเรอร์รีจิสตรี ตัวอย่างมีดังนี้:
บันทึก:
ฟิลด์:
บริการ: รีจิสทรี
พื้นที่จัดเก็บ:
แคช:
blobdescriptor: ในความทรงจำ
http:
เพิ่ม: : 5,000
ส่วนหัว:
X-เนื้อหา-ประเภท-ตัวเลือก: [ สูดจมูก ]
สุขภาพ:
โปรแกรมควบคุมการจัดเก็บข้อมูล:
เปิดใช้งาน: จริง
ช่วงเวลา: 10s
เกณฑ์: 3
คุณสามารถบันทึกไฟล์นี้ลงในไดเร็กทอรีใดๆ ที่คุณเลือก โดยที่คุณมีสิทธิ์ในการอ่านและเขียน
จากนั้นให้เรียกใช้คอนเทนเนอร์มิเรอร์รีจิสตรี Docker โดยระบุเส้นทางไปยังไฟล์การกำหนดค่าที่เราเพิ่งสร้างขึ้น เราต้องระบุพอร์ตที่เราต้องการเปิดเผยคอนเทนเนอร์ด้วย
$ นักเทียบท่าวิ่ง -d -พี 5,000 : : 5,000 --เริ่มต้นใหม่ =เสมอ --ชื่อ = มิเรอร์รีจิสทรี -ใน / เส้นทาง / ถึง / config.yml: / ฯลฯ / นักเทียบท่า / รีจิสทรี / รีจิสทรี config.yml: 2
ขึ้นอยู่กับเวอร์ชัน คุณสามารถข้ามการกำหนดค่าและรันด้วยค่าเริ่มต้นโดยใช้คำสั่งดังต่อไปนี้:
กำหนดค่า Docker Daemons
เมื่อมิเรอร์ทำงาน คุณสามารถกำหนดค่า Docker daemons เพื่อใช้มิเรอร์รีจิสทรีโดยการแก้ไขไฟล์การกำหนดค่า daemon โดยปกติจะอยู่ใน /etc/docker/daemon.json
เพิ่ม URL มิเรอร์ใต้คีย์รีจิสตรีมิเรอร์
{'กระจกรีจิสทรี' : : [ 'https://<my-docker-mirror-host>' ]
}
บันทึกไฟล์และโหลด Docker Engine อีกครั้งเพื่อให้การเปลี่ยนแปลงมีผล
ทดสอบกระจก Registry
คุณสามารถทดสอบมิเรอร์ได้โดยการดึงรูปภาพจาก Docker Hub มิเรอร์ควรแคชรูปภาพไว้ในเครื่อง เพื่อลดเวลาในการดาวน์โหลด ตัวอย่างเช่น:
$ นักเทียบท่าดึงอัลไพน์
การดึงครั้งแรกมาจาก Docker Hub แต่การดึงรูปภาพเดียวกันครั้งต่อไปควรจะเร็วกว่ามาก
บทสรุป
ในบทช่วยสอนนี้ คุณได้เรียนรู้วิธีกำหนดค่ามิเรอร์รีจิสทรี Docker เพื่อเร่งความเร็วการดาวน์โหลดและการแจกจ่ายอิมเมจ Docker