0Pricing
Docker & DevOps Fundamentals · บทเรียน

Docker Volume เพื่อการคงอยู่ของข้อมูล

ใช้งาน Docker volume เพื่อจัดเก็บและจัดการข้อมูลถาวรสำหรับแอปพลิเคชันในคอนเทนเนอร์

Docker Volume เพื่อการคงอยู่ของข้อมูล เป็นบทเรียน Docker & DevOps Fundamentals ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Docker & DevOps Fundamentals และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Docker & DevOps Fundamentals มีบทเรียนทั้งหมด 4 บทเรียน

เหตุใดจึงต้องมีข้อมูลถาวร

คอนเทนเนอร์ได้รับการออกแบบให้มีขนาดเล็กและใช้งานชั่วคราว เมื่อคอนเทนเนอร์ถูกลบ ข้อมูลใด ๆ ที่เก็บอยู่ในเลเยอร์ที่เขียนได้ของคอนเทนเนอร์จะสูญหายไปตลอดกาล

แต่หากแอปพลิเคชันของคุณจำเป็นต้องบันทึกข้อมูลสำคัญ เช่น ฐานข้อมูลหรือไฟล์ของผู้ใช้ล่ะ นี่คือบทบาทของการคงอยู่ของข้อมูล

Docker Volume เพื่อการคงอยู่ของข้อมูล — ภาพประกอบ 1

ทำความรู้จัก Docker Volumes

Docker Volumesเป็นวิธีที่ดีที่สุดในการจัดเก็บข้อมูลแอปพลิเคชันแบบถาวรในด็อกเกอร์ ต่างจากข้อมูลที่จัดเก็บไว้โดยตรงในคอนเทนเนอร์ โวลุมจะได้รับการจัดการโดยด็อกเกอร์และมีอยู่แยกจากคอนเทนเนอร์ใด ๆ โดยเฉพาะ

  • โวลุมจะถูกจัดเก็บไว้ในส่วนหนึ่งของระบบไฟล์โฮสต์ที่ด็อกเกอร์เป็นผู้จัดการ
  • โวลุมได้รับการปรับให้เหมาะกับประสิทธิภาพการรับส่งข้อมูลเข้าออก
  • โวลุมสำรองข้อมูลหรือย้ายไปยังระบบอื่นได้ง่าย

สร้างโวลุมแรกของคุณ

มาสร้างโวลุมแบบตั้งชื่อกันครับ โวลุมแบบตั้งชื่อนั้นใช้งานง่าย เพียงกำหนดชื่อให้ แล้ว Docker จะจัดการส่วนที่เหลือให้

ใช้คำสั่ง docker volume create ตามด้วยชื่อโวลุมที่ต้องการ

docker volume create my_data_volume

แสดงรายการโวลุมของคุณ

หลังจากสร้างโวลุมแล้ว คุณสามารถดูโวลุมดังกล่าวในรายการโวลุม Docker ทั้งหมดที่มีอยู่ในระบบของคุณได้

ใช้คำสั่ง docker volume ls เพื่อดูรายการ

docker volume ls

ใช้โวลุมกับคอนเทนเนอร์

ต่อไปมาลองเรียกใช้คอนเทนเนอร์และเชื่อมต่อโวลุมที่เพิ่งสร้างเข้ากับคอนเทนเนอร์กัน เราจะใช้แฟล็ก -v สำหรับงานนี้

รูปแบบคือ -v volume_name:container_path ซึ่งจะเมานต์ my_data_volume ไปยัง /app/data ภายในคอนเทนเนอร์ nginx

docker run -d --name my_app_with_volume -v my_data_volume:/app/data nginx

จัดเก็บข้อมูลในโวลุม

มาลองเขียนข้อมูลลงในโวลุมที่เมานต์ไว้จากภายในคอนเทนเนอร์ที่กำลังทำงานกัน เราจะใช้ docker exec เพื่อเรียกใช้คำสั่งภายในคอนเทนเนอร์

ข้อมูลจะถูกบันทึกไว้ที่ /app/data/message.txt ภายในคอนเทนเนอร์ ซึ่งแท้จริงแล้วจัดเก็บอยู่ใน my_data_volume

docker exec my_app_with_volume sh -c "echo 'Hello from CoddyKit!' > /app/data/message.txt"

ข้อมูลยังคงอยู่เมื่อลบคอนเทนเนอร์

ประโยชน์สำคัญของโวลุมคือการคงอยู่ของข้อมูล มาพิสูจน์กันครับ

ขั้นแรก เราจะหยุดและลบคอนเทนเนอร์ จากนั้นจะเรียกใช้คอนเทนเนอร์ *ใหม่* โดยเชื่อมต่อโวลุม *เดิม* เพื่ออ่านข้อมูลที่เราเขียนไว้

docker stop my_app_with_volume
docker rm my_app_with_volume
docker run --rm -it -v my_data_volume:/app/data alpine sh -c "cat /app/data/message.txt"

ตรวจสอบรายละเอียดโวลุม

คุณสามารถดูข้อมูลโดยละเอียดของโวลุมได้ด้วยคำสั่ง docker volume inspect ซึ่งจะแสดงชื่อ ไดรเวอร์ และที่สำคัญคือจุดเมานต์บนระบบไฟล์ของเครื่องโฮสต์

docker volume inspect my_data_volume

ล้างโวลุมที่ไม่ใช้งาน

โปรดจำไว้ว่าโวลุมทำงานแยกจากคอนเทนเนอร์ หากไม่ต้องการใช้โวลุมอีกต่อไป คุณต้องลบโวลุมโดยเจาะจง

ใช้คำสั่ง docker volume rm โปรดระวัง เนื่องจากคำสั่งนี้จะลบข้อมูลอย่างถาวร

docker volume rm my_data_volume

ตรวจสอบความเข้าใจเรื่องโวลุม

ได้เวลาตอบคำถามสั้น ๆ เพื่อทดสอบความเข้าใจเกี่ยวกับโวลุม Docker ของคุณแล้วครับ

โวลุม: หัวใจสำคัญของข้อมูลถาวร

ทำได้ดีมากครับ คุณได้เรียนรู้แล้วว่าโวลุม Docker เป็นโซลูชันที่มีประสิทธิภาพสำหรับการจัดเก็บข้อมูลถาวร

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

ถัดไป เราจะเรียนรู้เรื่อง การเมานต์แบบผูก ซึ่งเป็นอีกวิธีหนึ่งในการจัดการข้อมูล แต่เหมาะกับกรณีใช้งานที่แตกต่างกัน

คำถามที่พบบ่อย

บทเรียน “Docker Volume เพื่อการคงอยู่ของข้อมูล” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “Docker Volume เพื่อการคงอยู่ของข้อมูล” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Docker & DevOps Fundamentals ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Docker & DevOps Fundamentals มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “Docker Volume เพื่อการคงอยู่ของข้อมูล”

ใช้งาน Docker volume เพื่อจัดเก็บและจัดการข้อมูลถาวรสำหรับแอปพลิเคชันในคอนเทนเนอร์ คุณปฏิบัติ Docker & DevOps Fundamentals ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Docker & DevOps Fundamentals หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Docker & DevOps Fundamentals บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน

บทเรียน “Docker Volume เพื่อการคงอยู่ของข้อมูล” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Docker & DevOps Fundamentals นี้ได้ไหม

ได้ บทเรียน Docker & DevOps Fundamentals ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. พื้นฐานเครือข่ายคอนเทนเนอร์
  2. Docker Volume เพื่อการคงอยู่ของข้อมูล
  3. Bind Mount และ tmpfs Mount
  4. เครือข่ายบริดจ์แบบกำหนดเองและการค้นหาบริการ
← กลับไปที่ Docker & DevOps Fundamentals