10 Docker Commands ที่ Frontend Developer ควรรู้จักไว้
16-มิ.ย.-23
คัมภีร์เทพ IT
ในฐานะของ Frontend Developer การได้รู้วิธีการใช้ Docker จะช่วยให้กระบวนการ Build, Test และ Deploy Web Applications ของคุณ ทำได้ง่ายขึ้น อีกทั้งยังช่วยให้คุณทำงานร่วมกับ Backend Developer ได้ราบรื่นขึ้นอีกด้วย และนี่ก็คือ 10 Docker Commands ที่ Frontend Developer ควรรู้จักไว้
1. Docker Build
คำสั่งแรกที่ Frontend Developer ทุกคนควรรู้ คือ docker build คำสั่งนี้จะถูกใช้เพื่อสร้าง Docker image จาก Dockerfile ซึ่ง Dockerfile เป็น Script ที่มี Instructions ในการสร้าง image
สำหรับ Syntax ของคำสั่ง build docker ก็คือ:
หากต้องการใช้คำสั่งจากตัวอย่างนี้ ให้ cd เข้าไปใน Root Directory ของ Project (ซึ่งมี Dockerfile อยู่) แล้ว Run คำสั่งต่อไปนี้:
- t Argument เป็นรูปแบบย่อของ -tag Argument และจะอนุญาตให้คุณสามารถระบุ Name และ Optional Tag (ส่วนที่ต่อจากเครื่องหมาย Colon) สำหรับ Image
- Tag เพื่อแยก Version ของ Image หากคุณไม่ใส่ Tag (เช่น กรณีที่คุณเพิ่ง Run คำสั่ง docker build -t my-app จะทำให้ Image ได้รับ Tag "latest" โดยอัตโนมัติ)
2. Docker Images
หากต้องการแสดงรายการของ Docker Images ทั้งหมดที่ถูกสร้างขึ้นในคอมพิวเตอร์ของคุณ คุณจะต้องใช้คำสั่ง docker images
หากคุณ Run สิ่งนี้ คุณควรเห็น my-app image อยู่ในรายการด้วย และที่สำคัญคือ docker images เทียบเท่ากับคำสั่ง docker image ls
3. Docker Run
เมื่อคุณสร้าง Image แล้ว คุณจะ Run มันได้อย่างไร คุณต้องใช้คำสั่ง docker run โดยที่ Syntax ของคำสั่ง docker run ก็คือ:
ตัวอย่างเช่น หากคุณต้องการเริ่ม Container สำหรับ Image ที่มี Tag ว่า "my-app:v1" และเข้าถึง Container บน Port 80 คุณจะต้อง Run:
ตัวอย่างนี้ถือว่า Dockerfile จะแสดง App บน Port 80 ซึ่งในการ Map กับ Host Port อื่น ให้ระบุหมายเลขอื่นสำหรับส่วนแรกของ -p Argument
หากคุณ Run คำสั่งนี้ คุณจะสังเกตเห็นว่า Terminal Window ของคุณจะถูก Lock ไม่ให้ Process ทำงาน หากคุณต้องการ Run Container ไปด้วย ก็ให้เพิ่ม -d Argument เข้าไป ดังนี้:
คำสั่งจะ Return Container ID และคืนการควบคุม Terminal Window กลับมาให้คุณ
เมื่อคุณ Run Container ส่วนของ Docker จะกำหนดชื่อแบบสุ่ม ๆ ให้ เช่น "happy-einstein" แต่คุณก็สามารถระบุชื่อของคุณเองได้ โดยใส่ --name Argument เข้าไป
ตัวอย่างเช่น เราสามารถตั้งชื่อ Container ที่ Run my-app image ว่า "vite-app" ซึ่งจะใช้คำสั่งดังนี้:
4. Docker PS
หากต้องการแสดงรายการ Containers ทั้งหมดที่กำลัง Run อยู่ ก็ให้ Run คำสั่งนี้:
ถึงตอนนี้ คุณควรเห็น my-app Container อยู่ในรายการ พร้อมด้วย Container ID และ Image Name ของมัน
5. Docker Start/Stop
Container สามารถใช้ Syntax นี้:
หากต้องการหยุดการทำงานของ Container ที่คุณตั้งชื่อเอง ให้ Run:
แต่หากต้องการให้เริ่มต้นการทำงานอีกครั้ง คุณต้อง Run:
เคล็ดลับ: เมื่อ Container หยุดทำงาน Container นั้นก็จะไม่ปรากฏอยู่ในรายการ Container ที่กำลัง Run อยู่อีกต่อไป (docker ps) แต่คุณยังคงเห็นรายการได้หากคุณ Run คำสั่งนี้ ซึ่งจะแสดง Container ทั้งหมด ไม่ว่าจะกำลัง Run อยู่ หรือหยุดทำงานไปแล้ว:
6. Docker Logs
เมื่อใช้คำสั่ง docker logs คุณสามารถดู Logs จาก Container ที่กำลัง Run อยู่ได้ ซึ่ง Syntax ก็คือ:
ตัวอย่างเช่น หากต้องการดู Logs จาก Container ที่เราตั้งชื่อว่า "vite-app" ก็ให้ Run คำสั่งต่อไปนี้:
คำสั่งนี้ จะช่วย Debug ปัญหา หรือ Exceptions ที่เกิดขึ้นใน Container เสียตั้งแต่ต้น
7. Docker Exec
อีกคำสั่ง ที่มีประโยชน์อย่างมากก็คือ docker exec โดยคำสั่งนี้จะอนุญาตให้คุณ Run คำสั่งใน Container ที่กำลัง Run อยู่
สำหรับ Syntax ของคำสั่ง docker exec ก็คือ:
ตัวอย่างเช่น หากคุณต้องการ Open Shell ที่อยู่ภายใน "vite-app" Container ก็ให้ Run:
เคล็ดลับ: หากคุณต้องการออกจาก Interactive Shell ก็ให้พิมพ์ 'exit'
8. Docker Login
เมื่อคุณสร้าง Image สำหรับ App และทดสอบ Run สำเร็จแล้ว คุณจะแชร์ Image ให้กับทีมของคุณ หรือ Deploy ไปยัง Cloud Provider ได้อย่างไรบ้าง สำหรับการทำเช่นนั้น คุณต้องมี Container Registry ก่อน
Docker Hub เป็น Container Registry สาธารณะ ซึ่งหมายความว่า ทุกคนสามารถเข้าถึงและ Download Images ที่จัดเก็บไว้ในนั้น เว้นแต่ User จะทำเป็น Private Repository
Cloud Providers อื่น ๆ อย่าง AWS, Azure และ GCP ก็มี Private Container Registries ที่ช่วยให้ Users สามารถจัดเก็บและจัดการกับ Images ของพวกเขาได้
ในการเข้าสู่ Docker Hub (สมมติว่าคุณมี Account แล้ว) คุณจะต้องใช้คำสั่ง:
Cloud Providers รายใหญ่ ๆ มักจะมี cli ของตนเองเพื่อเข้าถึง Container Registries ดังนั้น โปรดตรวจสอบ Document ของ Cloud Providers แต่ละราย เพื่อศึกษารายละเอียดเพิ่มเติม
9. Docker Push
ในการ Push Image ไปยัง Docker Hub ให้ใช้คำสั่ง docker push ซึ่งมี Syntax ดังนี้:
โปรดทราบว่า Docker Hub จะถือว่าคุณตั้งชื่อ Image ในรูปแบบที่ Docker Hub username ตามด้วย / จากนั้นก็ตามด้วยชื่อ Image ที่ต้องการ
สำหรับ Standard Convention เมื่อมีการสร้าง Docker Images ก็คือ:
ในกรณี ถ้าต้องการสร้าง Image ตัวอย่างสำหรับ Docker Hub account ของผู้เขียนบทความนี้ (Matt Burrell) ก็จะใช้คำสั่งนี้:
Docker Hub จะทำการ Tag Image ของ Matt ที่ชื่อ "vite-app" เป็น "v1" ให้โดยอัตโนมัติ
10. Docker Pull
เมื่อคุณเข้าสู่ Container Registry แล้ว คุณสามารถ Pull Images ที่มีอยู่ โดยใช้คำสั่ง docker pull:
หากคุณเคยใช้ Git มาแล้ว คุณก็น่าจะคุ้นเคยกับ Push และ Pull เป็นอย่างดี
ที่มา: https://betterprogramming.pub/
รับตำแหน่งงานไอทีใหม่ๆ ด้วยบริการ IT Job Alert
อัพเดทบทความจากคนวงในสายไอทีทาง LINE ก่อนใคร
อย่าลืมแอดไลน์ @techstarth เป็นเพื่อนนะคะ
บทความล่าสุด