มาดูการสร้าง Docker image ด้วย Buildpacks กันหน่อย
โดยที่เราไม่จำเป็นต้องสร้างผ่าน Dockerfile
ซึ่งเป็นการลดขั้นตอนของการสร้าง Docker image ลงไป
ที่สำคัญเมื่อนำมาร่วมกับระบบที่พัฒนาด้วยภาษา Go ยิ่งสะดวกไปอีก
มาดูกันว่า ใช้งานอย่างไรบ้าง
ขั้นตอนที่ 1 ทำการติดตั้ง Buildpacks ก่อน
โดยตัวอย่างจะติดตั้งและใช้งานผ่าน Mac OS
พร้อมกับติดตั้ง Docker Desktop for Mac ด้วย
ขั้นตอนที่ 2 ตัวอย่าง code ของระบบพัฒนาด้วยภาษา Go
ซึ่งจะสร้างระบบด้วย Go module
[gist id="77d2c6820e9d03758a0172d6a4764f63" file="server.go"]ขั้นตอนที่ 3 ทำการสร้าง Docker image ด้วย Buildpacks
โดยที่ Buildpacks จะทำการ download dependency ต่าง ๆ ให้แบบอัตโนมัติ
ตามไฟล์ go.mod นั่นเอง
รวมทั้งจะสร้าง binary file ให้เองอีกด้วย
สุดท้ายจะได้ Docker image ออกมา
สร้างง่าย ๆ ด้วยคำสั่ง
เพียงเท่านี้ก็สามารถได้ Docker image
เพื่อนำไป run/deploy ต่อไปได้แล้ว
มันง่ายมากจริง ๆ