docker Archive

[Docker CE Edge] มาลองใช้งาน Multi-stage build สำหรับสร้าง image กัน

วันนี้ไปดู release note ของ Docker edge version (v17.05.0 ce) พบว่า มีความสามารถที่กำลังต้องการคือ Multi-stage build ซึ่งช่วยทำให้การสร้าง image ของระบบงานได้ง่าย และสะดวกขึ้น ที่สำคัญยังช่วยลดขนาดของ image อีกด้วย มาลองใช้งานกันดู

Read More…

[Docker] แก้ไขปัญหาเรื่อง JVM กิน memory เยอะเกินเหตุ !!

ปัญหาที่มักพบเจอเกี่ยวกับการสร้าง Container สำหรับ JVM คือ การกำหนดขนาดของ memory ให้นั่นเอง ซึ่งพบว่า ถึงแม้จะกำหนดขนาดของ memory ตอนสร้าง container ไปแล้ว แต่ตัว JVM มันก็ยังมีค่าของ Max Heap Size (Estimated) เป็นค่าที่สูงกว่า

Read More…

สวัสดี Moby project :: Lego club ของโลก container

ในงาน DockerCon ทาง Docker ทำการปล่อย 2 project ใหม่ออกมา คือ LinuxKit Moby project โดยที่ LinuxKit นั้นคือ Toolkit สำหรับการสร้าง custom Linux distribution ตามความต้องการ ซึ่งมีขนาดที่เล็ก นั่นคือมีเท่าที่ต้องการเท่านั้น รวมทั้ง service ต่าง ๆ นั้นอยู่ใน container ทั้งหมด ที่สำคัญ immutable อีกด้วยนั่นคือ สร้างมาแล้วไม่สามารถเปลี่ยนแปลงได้

Read More…

เริ่มต้นการเรียนรู้ Docker จาก Try Docker ของ Code School

ช่วงวันหยุดยาวทาง Code School ได้ปล่อย Try Docker ออกมา ซึ่งเหมาะมาก ๆ สำหรับผู้เริ่มต้นศึกษา Docker ประกอบไปด้วย 3 หัวข้อพื้นฐานคือ Container และ Image คืออะไร ใช้งานอย่างไร Dockerfile สำหรับการสร้าง image การจัดการ Data Volume สำหรับ container

Read More…

[Prototype] สรุปการสร้างระบบบันทึกผลการทดสอบในรูปแบบ VDO อย่างง่ายมั้ง !!

มีคำถามที่น่าสนใจคือ ถ้าเราต้องการบันทึกผลการทดสอบ UI testing แบบอัตโนมัติในรูปแบบ VDO ได้ไหม ? ตอบง่าย ๆ ก็ได้นะ ทำง่ายด้วย คือเครื่องที่ทดสอบก็เปิดโปรแกรมบันทึก VDO เอาเลย หรือไม่ก็ตั้งกล้องหน้าจอกันไปเลย แต่วิธีการดังกล่าวมันอาจจะจะไม่โดนใจเราเท่าไร ดังนั้นจึงเป็นที่มาของการทดลองสร้างระบบง่าย ๆ โดยรวมใช้เวลาในการศึกษาและลองสร้าง จนได้ prototype ของสิ่งที่ต้องการประมาณ 4 ชั่วโมง จึงทำการสรุปไว้นิดหน่อย

Read More…

บันทึกการเตรียม Server ให้กับค่าย Give&Take Agile for Software Development Workshop

มีโอกาสไปร่วมแบ่งปันความรู้ในการพัฒนา software ในค่าย Give&Take Agile for Software Development Workshop 3 วัน ให้กับนักศึกษาที่มหาวิทยาลัยขอนแก่น สิ่งที่ต้องจัดเตรียมให้คือ Server สำหรับการพัฒนาระบบจำนวน 10 กลุ่ม จึงทำการบันทึกไว้นิดหน่อย ปล. มีเวลาให้ทำประมาณ 30 นาทีได้มั้ง

Read More…

สวัสดี Docker 1.13.0 กันเล็กน้อย

หลังจากที่ Docker 1.13.0 ถูกปล่อยออกมา มี feature ใหม่เพิ่มเข้ามามากมาย มีการปรับปรุงมากมาย มีการแก้ไข bug มากมาย มีสิ่งที่ deprecated มากมาย ดูเพิ่มเติมได้ที่ Release Note :: 1.13.0 แต่ feature ที่ส่วนตัวชอบมีดังนี้

Read More…

Docker :: แก้ไขปัญหาของ service ใน container ยังไม่พร้อมใช้งาน

ปัญหาที่พบเจอ เมื่อนำ Docker มาใช้งานร่วมกับระบบ Continuous Integration (CI) คือ ในแต่ละ container จะต้อง start service ต่าง ๆ ขึ้นมา ซึ่งพบว่าแต่ละ service ก็มีความช้าและเร็วในการ start service ดังนั้นถ้าต้องการทดสอบระบบที่ต้องใช้ service เหล่านี้ จะไม่สามารถทดสอบได้ หรือการทดสอบพังแน่นอน เนื่องจาก service ยัง start ไม่เสร็จนั่นเอง

Read More…

จัดการ Spring boot application ด้วย Docker

จากบทความเรื่อง การวางโครงสร้างระบบด้วย Spring boot ก็มีถึงกระบวนการ deploy กันบ้าง ซึ่งเลือกที่จะจัดการผ่าน Docker โดยสิ่งที่คิดไว้จะมี 2 container คือ สำหรับ Database ซึ่งคือ MariaDB สำหรับการ run ระบบด้วย Spring boot ดังนั้นมาลงมือทำกันหน่อย เพื่อทำให้กระบวนการพัฒนาและ deploy มันสะดวกสบายมากขึ้น แน่นอนว่า สนุกสนานกันอย่างแน่นอน

Read More…

สิ่งที่ควรคำนึงสำหรับการสร้าง Docker Image กับ Java

มีโอกาสต้องนำ Docker มาใช้ในระบบงานที่พัฒนาด้วยภาษา Java จากการลงมือทำพบว่า มันไม่ใช่เรื่องง่ายเลย สำหรับการนำระบบงานที่พัฒนาด้วยภาษา Java มาใส่ในโลกของ Container ดังนั้นจึงทำการสรุปสิ่งที่ต้องคำนึงไว้นิดหน่อย น่าจะเป็นประโยชน์สำหรับคนที่กำลังจะเริ่มนะ 1. เริ่มด้วยการเลือก Image ของ JDK (Java Development Kit) ที่มีขนาดเล็ก ๆ จากการทดลองใช้ image จาก OpenJDK 8 พบว่า OpenJDK แบบ default ซึ่งใช้ os คือ Debian 8 Jessie มีขนาด 643.2 MB (สำหรับ JRE มีขนาด 107.9 MB) OpenJDK แบบใช้ os คือ alpine มีขนาด 145 MB (สำหรับ JRE [&hellip

Read More…