Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> ฐานข้อมูล

ปรับใช้ MongoDB เป็นคอนเทนเนอร์ Docker

MongoDB® หนึ่งในฐานข้อมูล NoSQL ที่เข้าถึงได้มากที่สุด มีตัวเลือกการนำไปใช้งานมากมาย ในโพสต์นี้ ฉันใช้ Docker® เพื่อปรับใช้ MongoDB เป็นคอนเทนเนอร์ และใช้ไคลเอ็นต์เชลล์เพื่อโต้ตอบกับคอนเทนเนอร์นั้น

แนะนำตัว

หลังจากที่คุณติดตั้ง Docker บนคอมพิวเตอร์หรือเซิร์ฟเวอร์ของคุณแล้ว ให้ทำตามขั้นตอนต่อไปนี้เพื่อปรับใช้ MongoDB เป็นคอนเทนเนอร์ Docker:

  1. ดาวน์โหลดอิมเมจ MongoDB Docker ล่าสุดหรือเฉพาะ
  2. ปรับใช้อินสแตนซ์ของ MongoDB เป็นคอนเทนเนอร์
  3. โต้ตอบกับคอนเทนเนอร์ MongoDB Docker กับการทำงานของเชลล์พื้นฐาน

ดาวน์โหลดอิมเมจ MongoDB Docker

หากคุณติดตั้ง Docker บนคอมพิวเตอร์หรือเซิร์ฟเวอร์ คุณสามารถรับ MongoDBimage จากรีจิสตรีคอนเทนเนอร์ Docker Hub อย่าลืมดาวน์โหลดเวอร์ชันภาพเฉพาะที่คุณคาดว่าจะใช้ เช่น mongo:4.0.4 คุณไม่จำเป็นต้องระบุเวอร์ชันของรูปภาพ แต่ถ้าละเว้น คุณจะได้รับเวอร์ชันล่าสุด ซึ่งอาจส่งผลให้ประสบการณ์ใช้งานไม่สอดคล้องกัน เนื่องจาก Mongo สามารถอัปเดตเวอร์ชันล่าสุดได้ตลอดเวลา

กำลังดำเนินการ docker images คำสั่งแสดงรายการรูปภาพที่พร้อมใช้งานบนเซิร์ฟเวอร์ ในกรณีของเรา มันจะแสดงอิมเมจ MongoDB พร้อมแท็ก 4.0.4 ที่พร้อมใช้งาน

ใช้คำสั่งต่อไปนี้เพื่อดาวน์โหลดอิมเมจ MongoDB และแสดงรายการอิมเมจที่มีอยู่:

# docker pull mongo:4.0.4
# docker images
ปรับใช้ MongoDB เป็นคอนเทนเนอร์ Docker

ปรับใช้อินสแตนซ์ของ MongoDB เป็นคอนเทนเนอร์

เริ่มคอนเทนเนอร์แยก -d , โหมด. เนื่องจากคอนเทนเนอร์ใช้พื้นที่เก็บข้อมูลชั่วคราว คุณจึงควรเมาต์โวลุ่ม -v , เพื่อเก็บข้อมูลโดยระบุเส้นทางท้องถิ่น /data/db . เส้นทางนี้เป็นไดเร็กทอรีภายในของคอนเทนเนอร์ การดำเนินการนี้จะเก็บรักษาข้อมูลใน /data/db . ของโฮสต์ เส้นทางแม้ว่าคุณจะหยุดหรือถอดคอนเทนเนอร์ออก ในคำสั่ง คุณระบุชื่อ --name สำหรับคอนเทนเนอร์ของคุณ ตามด้วยอิมเมจ Docker และแท็ก ในกรณีนี้ ฉันใช้mongo:4.0.4 สำหรับแท็ก คำสั่งส่งคืนสตริงที่มี ID ของคอนเทนเนอร์ นักเทียบท่า ps คำสั่งแสดงรายการคอนเทนเนอร์ที่ทำงานอยู่

# docker run -d -v /data/db:/data/db --name mymongo mongo:4.0.4
# docker ps
ปรับใช้ MongoDB เป็นคอนเทนเนอร์ Docker

โต้ตอบกับ MongoDB Docker คอนเทนเนอร์กับเชลล์

หากต้องการใช้ประโยชน์จากการใช้งาน MongoDB คุณสามารถโต้ตอบกับฐานข้อมูลได้โดยใช้เชลล์ไคลเอ็นต์

เนื่องจากคุณกำลังเรียกใช้คอนเทนเนอร์ในโหมดแยก คุณควรเชื่อมต่อโดยใช้เทอร์มินัลแบบโต้ตอบ ใช้คำสั่งต่อไปนี้เพื่อเชื่อมต่อกับ yourdeployment ชื่อ mymongo และเริ่ม bash shell:

# docker exec -it mymongo bash
ปรับใช้ MongoDB เป็นคอนเทนเนอร์ Docker

ในการเปิดเชลล์ไคลเอ็นต์ MongoDB ให้รันคำสั่งต่อไปนี้:

# mongo
ปรับใช้ MongoDB เป็นคอนเทนเนอร์ Docker

จากไคลเอ็นต์เชลล์ MongoDB คุณสามารถเข้าถึงฟังก์ชันทั้งหมดที่ระบุไว้ในเอกสารประกอบ MongoDB ตัวอย่างเช่น คุณสามารถดูฐานข้อมูลที่มีอยู่ในอินสแตนซ์ของคุณด้วยคำสั่งต่อไปนี้:

> show dbs
ปรับใช้ MongoDB เป็นคอนเทนเนอร์ Docker

บทสรุป

ในโพสต์นี้ ฉันสร้างคอนเทนเนอร์ MongoDB โดยใช้ Docker กับไดรฟ์ข้อมูลที่แนบมาจากระบบโฮสต์ไปยังคอนเทนเนอร์ ฉันยังแสดงให้คุณเห็นถึงวิธีการเริ่มโต้ตอบกับคอนเทนเนอร์ MongoDB Docker ผ่านเชลล์ โพสต์นำเสนอการสาธิตเบื้องต้นเกี่ยวกับการเรียกใช้อินสแตนซ์ MongoDB ในคอนเทนเนอร์ Docker แต่คุณสามารถใช้อิมเมจ MongoDB เดียวกันเพื่อสร้างคอนเทนเนอร์จำนวนเท่าใดก็ได้ ใช้คอนเทนเนอร์เหล่านั้นเพื่อสร้างชุดแบบจำลองและทำสิ่งต่างๆ มากมายเพื่อสร้างแอปพลิเคชันที่มีคอนเทนเนอร์ที่แข็งแกร่ง

ฉันหวังว่าโพสต์นี้จะช่วยให้คุณมีความเข้าใจทั่วไปเกี่ยวกับวิธีทำให้อินสแตนซ์ aMongoDB ทำงานและเริ่มทำงานได้ภายในไม่กี่นาที

ใช้แท็บคำติชมเพื่อแสดงความคิดเห็นหรือถามคำถาม คุณยังแชทตอนนี้เพื่อเริ่มการสนทนาได้

เรียนรู้เพิ่มเติมเกี่ยวกับบริการฐานข้อมูลของเรา