Optimize Container image size

จาก Blog ตอนก่อนที่ไปพบว่า docker image มีขนาดใหญ่มาก และถ้าปล่อยไปนานๆ ไม่น่าจะดีแน่นๆ หลังจากแก้ปัญหาเรียบร้อยไป ผมขอสรุป Step การ Optimize Docker image ครับ //ดองไปหลายเดือนกว่าจะเขียนจนจบได้ Best Practice – Use Minimal Base Images พยายามเลือกใช้ Base Image ที่เล็กที่สุด และน่าเชื่อถือด้วยครับ ส่วนใหญ่จะเป็นพวกตระกูล ข้อสังเกตุ – Minimize the Number of Layers การ Run Command แต่ละรอบ COPY กับ RUN chowns นี้เพิ่ม Layer ได้เหมือนกันนะ เป็นไปได้ ยุบรวมกัน ยิ่งถ้า Copy Folder มาแล้ว มันมี Sub Directory เยอะ พอแยก Command กัน ได้เป็นหลายชั้นเลย แบบอันนี้ [Container] แก้ปัญหา docker image โต ADD กับ RUN สามารถ Optimize ได้นะ เคสนี้จะเป็นเคสที่เรา download package จาก remote มาทำอะไรสั่งอย่าง และ execute command ต่อ ส่วนคำสั่ง RUN เป็นไปได้ยุบให้เหลือน้อยที่สุดครับ โดยตัวอย่างจะอยู่ในเรื่องถัดไปพอดีครับ – Installing dependencies & Cleaning in same layer เป็นไปได้ ไม่จำเป็น ไม่ต้องไปลงอะไรเพิ่มนะครับ แต่ถ้าเสี่ยงไม่ได้…