avatar
thiti.dev
วงแหวนเว็บ
Search
Tags
My CV
Contact
Support me
ทําความรู้จักกับ Podman
8 Oct 2021

สวัสดีครับ ในบทความนี้เราจะมาทําความรู้จักกับ Podman กัน ซึ่งเป็นทางเลือกใหม่สําหรับผู้ที่ใช้งาน Docker โดยเราจะมาดูกันว่า Podman คืออะไร และมีความแตกต่างจาก Docker อย่างไร

Podman คืออะไร?

Podman เป็น Container engine เหมือน Docker ซึ่งก็หมายความว่า Docker ทําอะไรได้ Podman ก็ทําได้เช่นเดียวกัน แต่ใน Podman จะมีข้อดี หรือความแตกต่างจาก Docker ครับ เนื่องจาก Podman นําเอาข้อเสียของ Docker มาพัฒนาเพิ่มเติม สําหรับข้อดีของ Podman มาดูกันในหัวข้อถัดไปครับ

Podman ต่างจาก Docker อย่างไร?

สิ่งหลักๆของ Podman ที่ต่างจาก Docker มีดังนี้ครับ คือ Podman เป็น daemonless container engine หมายความว่า Podman ไม่ต้องการ Daemon มารันไว้ล่วงหน้า แต่จะอาศัยการ fork process ทุกครั้งที่ผู้ใช้ Run containner ขึ้นมา ทําให้ Containner engin ทํางานร่วมกับ systemd ได้เป็นอย่างดี ไม่จำเป็นต้องมีสิทธิ์ root ในการสร้างและ รันคอนเทนเนอร์ จึงทําให้ Podman สามารถทำงานใน environment โหมด root ได้ (run as root หรือ rootless mode) และสามารถติดต่อกับ Image resgitry ได้โดยตรง

เริ่มต้นใช้ Podman

เรามาเริ่มต้นด้วยการ Install podman กันก่อนครับ (เป็นตัวอย่างกรณีที่ใช้ Mac นะครับ) ด้วยคําสั่งนี้

$ brew install podman

ถ้าใครยังไม่ได้ติดตั้ง brew ก็ไปติดตั้งก่อนนะครับ

ต่อมา start the Podman-managed VM ด้วยคําสั่งนี้ครับ

$ podman machine init
$ podman machine start

ลองตรวจสอบการติดตั้งว่าเรียบร้อยมั้ย ด้วยการ get information ขึ้นมาดูก่อน

$ podman info

เท่านี้เราก็ได้ podman มาใช้แล้ว

ขั้นตอนต่อไปเรามาลอง run containner กันครับ ซึ่งถ้าเคยใช้งาน Docker มาก่อน ก็ง่ายเลยครับเพราะคําสั่งต่างๆเหมือน Docker ทุกประการ

มาเริ่ม run nginx ง่ายๆกัน ด้วยคําสั่งนี้ได้เลย

podman run -it --rm -p 8081:80 nginx

ก็จะได้ผลตามนี้ครับ

มาถึงจุดนี้จะเห็นว่าคําสั่งเหมือนกับ Docker ดังนั้นเราสามารถใช้คําสั่งของ Docker ได้เลย

สําหรับบทความนี้ก็ขอจบไว้เพียงเท่านี้นะครับ ขอบคุณครับ

thiti.dev © 2021 Thiti Yamsung