เรียกใช้ Docker Container ในพื้นหลัง (โหมดเดี่ยว)
ภายใต้ Docker นักพัฒนาอิมเมจสามารถกำหนดค่าเริ่มต้นของอิมเมจที่เกี่ยวข้องกับการทำงานเดี่ยวหรือเบื้องหน้า และการตั้งค่าที่เป็นประโยชน์อื่นๆ แต่เมื่อใช้คำสั่ง docker run [OPTIONS] คุณสามารถเพิ่มหรือลบล้างค่าเริ่มต้นของอิมเมจที่นักพัฒนาตั้งไว้ได้ ทำให้คุณควบคุมวิธีการทำงานของคอนเทนเนอร์ได้มากขึ้น
อ่านเพิ่มเติม: ctop – อินเทอร์เฟซยอดนิยมสำหรับการตรวจสอบคอนเทนเนอร์ Docker
ในบทความนี้ เราจะอธิบาย โหมดเบื้องหน้า และ โหมดพื้นหลัง ของการเรียกใช้คอนเทนเนอร์โดยย่อ และเรายังจะแสดงวิธีเรียกใช้ คอนเทนเนอร์ Dockerอีกด้วย > ในพื้นหลังในโหมดแยกออก
โหมดเบื้องหน้า (ค่าเริ่มต้น) เทียบกับโหมดพื้นหลัง/โหมดเดี่ยว
ก่อนที่จะเริ่ม คอนเทนเนอร์นักเทียบท่า ก่อนอื่นคุณต้องตัดสินใจว่าคุณต้องการเรียกใช้คอนเทนเนอร์ในโหมดเบื้องหน้าเริ่มต้นหรือในพื้นหลังในโหมดเดี่ยว .
ในโหมดเบื้องหน้า นักเทียบท่าสามารถเริ่มกระบวนการในคอนเทนเนอร์และต่อคอนโซลเข้ากับอินพุตมาตรฐาน เอาต์พุตมาตรฐาน และข้อผิดพลาดมาตรฐานของกระบวนการ
นอกจากนี้ยังมีตัวเลือกบรรทัดคำสั่งเพื่อกำหนดค่าเพิ่มเติม เช่น -t
เพื่อจัดสรร pseudo-tty ให้กับกระบวนการ และ -i
เพื่อเก็บ STDIN เปิดแม้ว่าจะไม่ได้แนบก็ตาม คุณยังสามารถแนบไปกับตัวอธิบายไฟล์อย่างน้อยหนึ่งตัว (STDIN, STDOUT และ/หรือ STDERR) โดยใช้ -a=[ ค่าที่นี่]
แฟล็ก
ที่สำคัญ --rm option
จะบอก Docker ให้ลบคอนเทนเนอร์ออกโดยอัตโนมัติเมื่อออก ตัวอย่างนี้แสดงวิธีการเริ่มต้นคอนเทนเนอร์นักเทียบท่าในโหมดเบื้องหน้า:
docker run --rm -ti -p 8000:80 -p 8443:443 --name pandorafms pandorafms/pandorafms:latest
ข้อเสียของการเรียกใช้คอนเทนเนอร์ในเบื้องหน้าคือคุณไม่สามารถเข้าถึงพรอมต์คำสั่งได้อีกต่อไป ดังที่คุณเห็นจากภาพหน้าจอด้านบน ซึ่งหมายความว่าคุณไม่สามารถรันคำสั่งอื่นได้ในขณะที่คอนเทนเนอร์กำลังทำงานอยู่
หากต้องการเรียกใช้คอนเทนเนอร์ Docker ใน พื้นหลัง ให้ใช้ตัวเลือก -d=true
หรือเพียงแค่ -d
ขั้นแรก ให้หยุดการทำงานจาก โหมดเบื้องหน้า โดยกด [Ctrl+C]
จากนั้นเรียกใช้งานใน โหมดเดี่ยว ดังที่แสดง:
docker run -d --rm -p 8000:80 -p 8443:443 --name pandorafms pandorafms/pandorafms:latest
หากต้องการแสดงรายการคอนเทนเนอร์ทั้งหมด ให้รันคำสั่งต่อไปนี้ (ค่าเริ่มต้นแสดงว่าเพิ่งทำงานอยู่)
docker ps -a
นอกจากนี้ หากต้องการแนบใหม่กับคอนเทนเนอร์ที่แยกออกมา ให้ใช้คำสั่ง dockerแนบ
docker attach --name pandorafms
OR
docker attach 301aef99c1f3
หากคุณต้องการหยุดคอนเทนเนอร์ด้านบนหรือคอนเทนเนอร์อื่นที่ทำงานอยู่ ให้ใช้คำสั่งต่อไปนี้ (แทนที่ 301aef99c1f3 ด้วย ID คอนเทนเนอร์จริง)
docker stop 301aef99c1f3
คุณอาจต้องการอ่านบทความ Docker ที่เกี่ยวข้องต่อไปนี้
- ติดตั้ง Docker และเรียนรู้การจัดการคอนเทนเนอร์ขั้นพื้นฐานใน CentOS และ RHEL 7/6 – ตอนที่ 1
- วิธีตั้งชื่อหรือเปลี่ยนชื่อคอนเทนเนอร์ Docker
- วิธีลบอิมเมจ Docker คอนเทนเนอร์และโวลุ่ม
แค่นั้นแหละ! ในบทความนี้ เราได้แสดงวิธีเรียกใช้คอนเทนเนอร์ Docker ในพื้นหลังในโหมดแยกออก ใช้แบบฟอร์มความคิดเห็นด้านล่างเพื่อให้ข้อเสนอแนะหรือถามคำถามเกี่ยวกับบทความนี้