Geard เป็นเครื่องมือบน command-line ใช้สำหรับเชื่อมโยง Docker Container กับ Systemd หรือเชื่อม Docker Container จากหลายๆ Host เข้าด้วยกัน ซึ่งโครงการนี้จะถูกใช้ใน OpenShift รุ่นถัดไป สำหรับท่านที่อยากลองใช้ Geard สามารถใช้งานได้จาก Linux ตระกูล RedHat ได้แก่ RHEL, CentOS, Fedora เป็นต้น ใน Fedora 20 มี Geard อยู่ใน Repository (testing) เรียบร้อยแล้ว เราสามารถนำมาใช้งานได้เลย

ครั้งนี้เราจะใช้ Fedora 20 ให้ติดตั้ง Geard กันก่อนดังนี้

yum install --enablerepo=updates-testing geard

เมื่อติดตั้งเสร็จให้สั่ง start docker ดังนี้

systemctl start docker

และ start geard ดังนี้

systemctl start geard

ทดลอง run Joomla! จาก image ของ Dell ดังนี้

gear install dell/joomla localhost/joomla -p 80:80 --start

รอสักพัก geard จะดาวน์โหลด Docker Image มาให้จากนั้นจะ start service ให้เรา ลองเปิด web browser ดูก็จะได้หน้าจอติดตั้ง Joomla! ดังนี้

ท่านที่ใช้ systemd จะคุ้นเคยกับการใช้คำสั่ง list-units ลองสั่งผ่าน geard ได้

gear list-units

คำสั่งนี้จะแสดงสถานะของ Container ว่าเป็นอย่างไร เมื่อมี unit file นั่นหมายความว่าต้องมี systemd config ด้วย ลองสั่ง

gear status joomla

ก็จะพบว่ามี unit file อยู่ที่ /var/lib/containers/units/jo/ctr-joomla.service

เราสามารถใช้ systemd ในการสั่งงานได้เช่นกัน

systemctl status ctr-joomla

หากสังเกตดู unit file ที่สร้างจาก geard จะมีคำว่า ctr- นำหน้าเสมอ เวลาสั่งผ่าน systemd ก็อย่าลืมเติม ctr- ก่อนหน้าชื่อ service หรือถ้ากลัวลืมก็สั่งผ่าน geard จะง่ายกว่า สำหรับการ start, stop service ก็สั่งผ่าน geard ได้ เช่น gear stop joomla เป็นต้น

Geard สามารถทำงานผ่าน REST API ได้โดยทำงานผ่าน port 43273 ดังนั้น เราสามารถสั่งงาน Geard ผ่าน REST API ได้เลย ตัวอย่างเช่น list container ใน Host

Comments are closed.