Fig เป็นเครื่องมือจัดการ Docker Container โดยหลักการใช้การเขียนไฟล์ config ในรูปแบบ yaml เพื่อระบุโครงสร้างของ application ที่ต้องการ deploy ซึ่งอาจจะเริ่มจาก Docker Image หรือ Dockerfile เพื่อสั่ง build docker image ใหม่ก็ได้ อีกทั้งยังสามารถ link container ได้ด้วย ทำให้ Fig สามารถ build application หรือ service ใหม่ได้ง่าย เหมาะสำหรับนักพัฒนาที่ต้อง build image ใหม่ซ้ำๆ หรือ deploy service ซ้ำๆ เป็นต้น

ตัวอย่างการใช้งาน Fig แบบง่ายๆ คือ python flask เก็บข้อมูลใน redis ซึ่งเราจะเริ่มต้นด้วยการ build docker image จาก Dockerfile โดยใช้ image ของ python2.7 เป็นพื้นฐาน เราจะได้ image ในส่วน web มา ในส่วนที่ 2 จะเป็นการใช้ image redis เป็น db เก็บข้อมูล จากนั้น link container ของ web และ db เข้าด้วยกัน ก่อนจะเริ่มลงมือทดลอง มาติดตั้ง Fig กันก่อน การติดตั้ง Fig ทำได้หลายวิธี วิธีที่ง่ายที่สุดคือผ่าน pip ดังนี้

sudo pip install fig

จากนั้นสร้างไดเรคทอรีสำหรับเก็บไฟล์ ดังนี้

mkdir figup
cd figup

เริ่มจาก web app ก่อนสร้างไฟล์ app.py ดังนี้

สร้างไฟล์ requirements.txt สำหรับติดตั้ง python module สำหรับ web app เพิ่มเติม

สร้าง Dockerfile สำหรับ build web app image ดังนี้

ปิดท้ายด้วย config ของ Fig ให้สร้างไฟล์ fig.yml ขึ้นมาดังนี้

จากนั้นสั่ง fig up ได้เลยดังนี้

fig up

Fig จะอ่านข้อมูลจาก fig.yml ดึง redis image

สร้าง web app image แล้ว depoly web container

จากนั้นก็เริ่ม start redis

และ link web app และ db เข้าด้วยกัน ลอง browse เข้าไปดูเราก็จะได้ demo แบบนี้

Comments are closed.