เรามาใช้ Make กันเถอะ!

Taewapon B.
odds.team
Published in
Apr 21, 2022

make ชีวิต dev ของคุณให้ง่ายขึ้น 😎

Photo by Beatriz Pérez Moya on Unsplash

ผมและทีมมีโปรเจค go ที่ทำงานบน docker ต้องจัดการด้วยกัน แต่ปัญหาของเราคือการที่ต้องมาใช้คำสั่ง docker-compose เพื่อ up/build ในการทำงานเกือบทุกครั้ง ยังไม่หมดแค่นั้น พวกเราต้องใช้คำสั่ง go run เพื่อเริ่มใช้งาน services นี้อีก!

ผมก็เลยมาคิดว่า มันจะดีกว่ามั้ยนะถ้าเรามีคำสั่งสั้น ๆ เพื่อใช้สำหรับ execute ชุดคำสั่งอื่น ๆ ในครั้งเดียวเลย… นั่นทำให้ make เข้ามาในความคิดผมทันทีครับ

Make คือชุดคำสั่งของ Unix ที่จะไปเรียกใช้ makefile ของ directory ที่เราใช้งานอยู่ แล้วตัวมันเองเนี่ยก็จะดึงชุดคำสั่งที่อยู่ภายในไฟล์มาใช้งานเองเลย และเนื่องจาก make เป็นคำสั่งที่มีอยู่แล้วใน os สิ่งที่เราต้องทำก็มีแค่สร้างไฟล์ที่ชื่อ makefile (ไม่มีนามสกุล) ทิ้งไว้ในโฟลเดอร์ที่เราจะใช้งาน เพียงเท่านี้ก็ใช้งานได้แล้ว 🎉

มาดูตัวอย่างกันดีกว่า จากภาพที่ 1 คือไฟล์ที่ผมได้สร้างและเพิ่มคำสั่งเอาไว้แล้วครับ

ภาพที่ 1 ตัวอย่างชุดคำสั่งที่อยู่ในไฟล์ makefile
ภาพที่ 1 ตัวอย่างชุดคำสั่งที่อยู่ในไฟล์ makefile

จะเห็นว่าผมมีทั้งหมดสี่คำสั่งคือ help, up, run และ down โดยแต่ละคำสั่งเนี่ยก็จะเรียกใช้คำสั่งด้านในอีกทีนึง ทีนี้ถ้าผมอยากใช้งานคำสั่งเพื่อใช้งาน go เนี่ย ผมไม่จำเป็นต้องพิมพ์ docker-compose พร้อม arguments ยาว ๆ และคำสั่ง go run แล้ว ตอนนี้ผมแค่ make run คำสั่งเดียว ตัว services ของผมก็พร้อมใช้งานแล้วครับ

ภาพที่ 2 ตัวอย่างการใช้งานคำสั่ง make run

จากภาพที่ 2 จะเห็นว่าตัว make ใช้งานคำสั่ง docker-compose ก่อนในบรรทัดที่ 2 แล้วค่อยใช้งาน go run ในบรรทัดสุดท้าย หลังจากที่จัดการกับ containers เสร็จเรียบร้อยแล้วนั่นเองครับ 😎

จบแล้วสำหรับความรู้เบา ๆ เกี่ยวกับ makefile หวังว่าทุกท่านจะได้นำไปปรับใช้กันดูแต่ตอนนี้ผมต้องขอตัวกลับไปทำงานต่อก่อน สวัสดีครับ 🙏 😂

Reference
What is a Makefile and how does it work? | Opensource.com

--

--