ในขณะที่สร้างแอปพลิเคชันใน Docker มีบางสถานการณ์ที่นักพัฒนาจำเป็นต้องทำการเปลี่ยนแปลงเป็นครั้งคราวตามข้อกำหนด ในขณะที่ใช้การเปลี่ยนแปลงหรือสร้างแอปพลิเคชันใหม่ จะมีการสร้างภาพขยะหรือภาพที่ห้อยต่องแต่งซึ่งจำเป็นต้องละเว้นเพื่อกำจัดขยะ
บทความนี้จะครอบคลุมประเด็นต่างๆ ดังต่อไปนี้:
อิมเมจ Dangling Docker คืออะไร
เอ “ ภาพห้อย ” สอดคล้องกับรูปภาพที่ไม่มีชื่อที่เก็บ และแท็กจะปรากฏชัดในรายการรูปภาพของ Docker ในรูปแบบของ “ <ไม่มี>: <ไม่มี> ” โดยที่คำว่า “none” ตัวแรกหมายถึงชื่อที่เก็บ และตัวหลัง “none” คือแท็ก
รูปภาพเหล่านี้ถูกสร้างขึ้นเมื่อมีการสร้างรูปภาพแอปพลิเคชันและติดแท็ก เช่น “ ภาพตัวอย่าง:x '. หลังจากนั้น จะมีการอัปเดตรูปภาพบางส่วน และสร้างรูปภาพใหม่ แต่มีแท็กเดียวกัน ในสถานการณ์เช่นนี้ Docker จะลบแท็กออกจากรูปภาพก่อนหน้า/สุดท้าย จากนั้นจึงจัดสรรแท็กให้กับรูปภาพใหม่ ผลก็คือ รูปภาพก่อนหน้า/สุดท้ายที่สูญเสียแท็ก ส่งผลให้เกิด 'รูปภาพห้อย'
จะลบรูปภาพ Dangling Docker ได้อย่างไร
“ รูปภาพนักเทียบท่าห้อยต่องแต่ง ” สามารถตรวจจับและละเว้นได้ผ่านทาง “ พรุน ” คำสั่งโดยอัตโนมัติ
ปฏิบัติตามวิธีการด้านล่างเพื่อสร้างและลบภาพที่ห้อยอยู่:
การสร้างภาพที่ห้อยต่องแต่ง
หากต้องการสร้าง 'ภาพที่ห้อยต่องแต่ง' ให้พิจารณาวิธีการที่อธิบายไว้ด้านล่าง:
ขั้นตอนที่ 1: แก้ไขไฟล์ “Dockerfile”
ก่อนอื่น มาสร้างภาพที่ห้อยต่องแต่งกันก่อน โดยเขียน/วางบรรทัดโค้ดต่อไปนี้ในไฟล์ชื่อ “Dockerfile”:
จากฟรี: 18.04จุดเริ่มต้น [ 'เอคโค่' , 'สวัสดีชาวโลก' ]
บันทึก: ที่นี่, ' 18.04 ” หมายถึงเวอร์ชันของ Ubuntu
ขั้นตอนที่ 2: สร้างภาพ
ตอนนี้ให้ดำเนินการ cmdlet ที่ระบุด้านล่างเพื่อสร้างภาพชื่อ “ สวัสดีชาวโลก:img1 ”:
สร้างนักเทียบท่า -t สวัสดีชาวโลก:img1
cmdlet ด้านบนสร้างอิมเมจ Docker ที่แสดง “ สวัสดีชาวโลก ” บนเทอร์มินัลเมื่อถูกดำเนินการเป็นคอนเทนเนอร์
ขั้นตอนที่ 3: แสดงรายการรูปภาพ
ตรวจสอบว่ารูปภาพถูกสร้างขึ้นหรือไม่โดยดำเนินการ cmdlet ที่ระบุด้านล่าง:
ภาพนักเทียบท่า LS
ที่นี่สามารถตรวจสอบได้ว่าภาพที่แท็กด้วย “ สวัสดีชาวโลก ' กับ ' img1 ” แท็กถูกสร้างขึ้นเรียบร้อยแล้ว
ขั้นตอนที่ 4: แก้ไขเวอร์ชันของอิมเมจฐาน
ตอนนี้อัปเดตเวอร์ชันของอิมเมจพื้นฐานจาก Ubuntu “ 18.04 ' ถึง ' 20.04 ” และสร้างอิมเมจใหม่ด้วยแท็กที่เหมือนกัน เช่น “hello-world:img1” โดยแก้ไข/แก้ไขโค้ดในไฟล์ “Dockerfile” ซึ่งเขียนไว้ด้านล่าง:
จากฟรี: 20.04จุดเริ่มต้น [ 'เอคโค่' , 'สวัสดีชาวโลก' ]
ขั้นตอนที่ 5: สร้างภาพอีกครั้ง
ที่นี่ รัน cmdlet ที่ให้มาด้านล่างอีกครั้งเพื่อสร้างอิมเมจใหม่:
สร้างนักเทียบท่า -t สวัสดีชาวโลก:img1
ตอนนี้ให้รัน cmdlet ที่ให้ไว้ด้านล่างเพื่อแสดงรายการรูปภาพในระบบ:
ภาพนักเทียบท่า LS
จะเห็นได้ว่าภาพที่ไฮไลต์มีทั้งชื่อของพื้นที่เก็บข้อมูลและแท็กที่ตั้งค่าเป็น “
ภาพนี้ถูกสร้างขึ้นครั้งแรกผ่าน Ubuntu” 18.04 ” ภาพฐาน หลังจากนั้น อิมเมจใหม่ก็ถูกสร้างขึ้นด้วยแท็กเดียวกัน (hello-world:img1) โดยใช้ Ubuntu “ 20.04 ” ภาพฐาน ดังนั้น Docker จึงลบแท็กออกจากรูปภาพต้นฉบับ/อดีตโดยอัตโนมัติ และจัดสรรให้กับรูปภาพใหม่ ดังนั้นจึงสร้างรูปภาพที่ห้อยต่องแต่ง
จะลบ/ละเว้นภาพที่ห้อยต่องแต่งได้อย่างไร
สามารถละเว้นภาพที่ห้อยต่องแต่งได้ผ่าน cmdlet ที่ระบุด้านล่าง:
ภาพนักเทียบท่า พรุน
สุดท้ายนี้ แสดงรายการรูปภาพทั้งหมดโดยใช้ cmdlet ที่กล่าวถึง:
ภาพนักเทียบท่า LS
จากรูปภาพที่แสดงไว้ด้านบน อาจบอกเป็นนัยได้ว่ารูปภาพห้อยต่องแต่งถูกตรวจพบและลบออก ดังนั้นจึงไม่ได้แสดงรายการไว้ที่นี่อย่างเหมาะสม
จะลบภาพที่ไม่ได้ใช้ได้อย่างไร?
หากจำเป็นต้องลบภาพที่ไม่ได้ใช้ ให้ใช้ cmdlet ต่อไปนี้:
ภาพนักเทียบท่า พรุน -ก
บทสรุป
เอ “ ภาพห้อย ” สอดคล้องกับรูปภาพที่ไม่มีชื่อที่เก็บเช่นเดียวกับแท็ก และสามารถลบออกได้โดยใช้คำสั่ง “ ตัดภาพนักเทียบท่า ” cmdlet รูปภาพประเภทเหล่านี้ถูกสร้างขึ้นหลังจากทำการอัปเดตแอปพลิเคชันและสร้างใหม่ ในบทความนี้ เราได้ให้ข้อมูลโดยละเอียดเกี่ยวกับอิมเมจ Docker ที่กำลังห้อยอยู่ และวิธีที่เป็นไปได้ในการลบออก