คำถามและคำตอบสัมภาษณ์นักเทียบท่า 43+ (2025)

ต่อไปนี้คือคำถามสัมภาษณ์งาน Docker ที่พบบ่อยสำหรับวิศวกร DevOps ทั้งมือใหม่และมือเก๋า

 

คำถามและคำตอบสัมภาษณ์นักเทียบท่าสำหรับนักศึกษาใหม่

1. นักเทียบท่าคืออะไร?

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


2. การใช้คอนเทนเนอร์ Docker มีข้อดีอย่างไร

นี่เป็นข้อได้เปรียบที่สำคัญของการใช้ นักเทียบท่า.

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

3. คุณสมบัติที่สำคัญของ Docker คืออะไร?

นี่คือคุณสมบัติที่สำคัญของ Docker:

  • การสร้างแบบจำลองง่าย
  • การควบคุมเวอร์ชัน
  • ตำแหน่ง/ความสัมพันธ์
  • ความคล่องตัวในการใช้งาน
  • ความสามารถในการผลิตของนักพัฒนา
  • Operaประสิทธิภาพที่แท้จริง

4. อะไรคือข้อเสียเปรียบหลักของ Docker?

ข้อเสียเปรียบที่โดดเด่นของ Docker คือ:

  • ไม่มีตัวเลือกการจัดเก็บ
  • เสนอตัวเลือกการตรวจสอบที่ไม่ดี
  • ไม่มีการกำหนดเวลาใหม่ของโหนดที่ไม่ได้ใช้งานโดยอัตโนมัติ
  • การตั้งค่ามาตราส่วนแนวนอนอัตโนมัติที่ซับซ้อน

5. อิมเมจ Docker คืออะไร

อิมเมจ Docker ช่วยในการสร้างคอนเทนเนอร์ Docker คุณสามารถสร้างอิมเมจ Docker ด้วยคำสั่ง build ด้วยเหตุนี้ จึงสร้างคอนเทนเนอร์ที่เริ่มต้นเมื่อเริ่มทำงาน อิมเมจนักเทียบท่าทุกตัวจะถูกจัดเก็บไว้ในรีจิสทรีนักเทียบท่า


6. Docker Engine คืออะไร

Docker daemon หรือ Docker engine แสดงถึงเซิร์ฟเวอร์ docker daemon และไคลเอ็นต์ควรทำงานบนโฮสต์เดียวกันหรือระยะไกล ซึ่งสามารถสื่อสารผ่านไบนารีไคลเอ็นต์บรรทัดคำสั่งและแบบเต็ม RESTful API.


7. อธิบายการลงทะเบียน

รีจิสทรีมีสองประเภทคือ

  • สำนักทะเบียนสาธารณะ
  • รีจิสทรีส่วนตัว

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


8. คุณควรรันคำสั่งใดเพื่อดูคอนเทนเนอร์ที่ทำงานอยู่ใน Docker?

$ docker ps

9. เขียนคำสั่งเพื่อหยุดคอนเทนเนอร์นักเทียบท่า

$ sudo docker stop container name

10. คำสั่งให้รันอิมเมจเป็นคอนเทนเนอร์คืออะไร?

$ sudo docker run -i -t alpine /bin/bash

คำถามสัมภาษณ์นักเทียบท่าสำหรับมืออาชีพที่มีประสบการณ์

11. คำแนะนำทั่วไปใน Dockerfile คืออะไร?

คำสั่งทั่วไปใน Dockerfile คือ FROM, LABEL, RUN และ CMD


12. แฟล็ก memory-swap คืออะไร?

Memory-swap เป็นแฟล็กที่ถูกแก้ไขซึ่งมีความหมายเฉพาะ if- memory เท่านั้นที่ถูกตั้งค่าไว้ด้วย Swap ช่วยให้คอนเทนเนอร์เขียนข้อกำหนดหน่วยความจำด่วนลงดิสก์ได้เมื่อคอนเทนเนอร์ใช้ RAM ที่มีอยู่จนหมด


13. อธิบาย Docker Swarm หน่อยสิ?

Docker Swarm เป็นการรวมตัวกันแบบเนทีฟสำหรับนักเทียบท่า ซึ่งช่วยให้คุณจัดกลุ่มโฮสต์ Docker ให้เป็นโฮสต์นักเทียบท่าเสมือนเดียว มันมีอินเทอร์เฟซโปรแกรมแอปพลิเคชันนักเทียบท่ามาตรฐาน


14. คุณจะตรวจสอบนักเทียบท่าในสภาพแวดล้อมการผลิตได้อย่างไร?

สถานะนักเทียบท่าและเหตุการณ์นักเทียบท่าใช้ในการตรวจสอบนักเทียบท่าในสภาพแวดล้อมการผลิต


15. Docker Container มีสถานะอะไรบ้าง?

สถานะที่สำคัญของคอนเทนเนอร์ Docker คือ:

  • เล่น
  • หยุดชั่วคราว
  • การเริ่มต้นใหม่
  • เดินออกมาจาก

16. Docker hub คืออะไร?

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


17. การจำลองเสมือนคืออะไร?

การจำลองเสมือนเป็นวิธีการแบ่งเมนเฟรมอย่างมีตรรกะเพื่อให้สามารถรันแอปพลิเคชันหลายตัวพร้อมกันได้

อย่างไรก็ตาม สถานการณ์ดังกล่าวได้เปลี่ยนไปเมื่อบริษัทต่างๆ และชุมชนโอเพ่นซอร์สสามารถเสนอวิธีการจัดการคำสั่งที่มีสิทธิพิเศษได้ โดยวิธีนี้จะช่วยให้ระบบปฏิบัติการหลายระบบสามารถทำงานพร้อมกันได้บนระบบที่ใช้ x86 ระบบเดียว


18. ไฮเปอร์ไวเซอร์คืออะไร?

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

การจำลองเสมือนใน Docker กับ Hypervisor

การจำลองเสมือนใน Docker กับ Hypervisor


19. อธิบายป้ายกำกับวัตถุ Docker

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


20. เขียนไฟล์ Docker เพื่อสร้างและคัดลอกไดเร็กทอรีและสร้างมันโดยใช้โมดูล python หรือไม่?

FROM pyhton:2.7-slim

WORKDIR /app

COPY . /app

docker build –tag

21. วอลุ่มนักเทียบท่าถูกเก็บไว้ที่ไหน?

คุณต้องนำทาง:

 /var/lib/docker/volumes

22. แสดงรายการคำสั่งนักเทียบท่าขั้นสูงที่สำคัญบางคำสั่ง

คำสั่ง Descriptไอออน
ข้อมูลนักเทียบท่า คำสั่งข้อมูล
นักเทียบท่าดึง ดาวน์โหลดรูปภาพ
สถิตินักเทียบท่า ข้อมูลคอนเทนเนอร์
ภาพนักเทียบท่า รายการภาพที่ดาวน์โหลด

23. การสื่อสารเกิดขึ้นระหว่างไคลเอ็นต์ Docker และ Docker Daemon อย่างไร

คุณสามารถสื่อสารระหว่างไคลเอ็นต์ Docker และ Docker Daemon ได้โดยใช้ Rest API, socket.IO และ TCP ร่วมกัน


24. อธิบายวิธีการนำไปใช้ของ Continuous Integration (CI) และ Continues Development (CD) ใน Docker?

คุณจะต้องทำสิ่งต่อไปนี้:

  • รันเจนกินส์บนนักเทียบท่า
  • คุณสามารถรันการทดสอบการรวมใน Jenkins โดยใช้ docker-compose

25. คำสั่งควบคุม Docker ด้วย Systemd คืออะไร?

systemctl start/stop docker
service docker start/stop

26. จะใช้ JSON แทนไฟล์เขียน YAML ได้อย่างไร

docker-compose -f docker-compose.json up

27. คำสั่งที่คุณต้องใช้เพื่อส่งอิมเมจใหม่ไปที่รีจิสทรี Docker คืออะไร?

docker push myorg/img

28. จะรวมโค้ดด้วยการคัดลอก/เพิ่มหรือวอลุ่มได้อย่างไร?

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


29. อธิบายกระบวนการปรับขนาดคอนเทนเนอร์ Docker ของคุณ

สามารถปรับขนาดคอนเทนเนอร์ Docker ให้เป็นระดับใดก็ได้ โดยเริ่มต้นจากหลายร้อยถึงหลายพันหรือหลายล้านคอนเทนเนอร์ เงื่อนไขเดียวสำหรับสิ่งนี้คือคอนเทนเนอร์จำเป็นต้องมีหน่วยความจำและระบบปฏิบัติการตลอดเวลา และไม่ควรมีข้อจำกัดเมื่อ Docker กำลังปรับขนาด


30. วิธีการสร้าง Docker Container มีวิธีใดบ้าง?

คุณสามารถใช้อิมเมจ Docker เฉพาะใดๆ เพื่อสร้างคอนเทนเนอร์ Docker โดยใช้คำสั่งด้านล่าง

docker run -t -i command name

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


คำถามสัมภาษณ์นักเทียบท่าสำหรับประสบการณ์ 5 ปี

31. ขั้นตอนสำหรับวงจรชีวิตของคอนเทนเนอร์ Docker คืออะไร?

ด้านล่างนี้เป็นขั้นตอนสำหรับวงจรชีวิตของ Docker:

  • สร้าง
  • ดึง
  • วิ่ง

32. คุณสามารถใช้งานหลายคอนเทนเนอร์โดยใช้บริการเดียวได้อย่างไร?

ด้วยการใช้ docker-compose คุณสามารถเรียกใช้คอนเทนเนอร์หลายรายการได้โดยใช้บริการเดียว ไฟล์นักเทียบท่าเขียนทั้งหมดใช้ภาษา yaml


33. ซีเอ็นเอ็ม คืออะไร?

CNM ย่อมาจาก Container Networking Model เป็นมาตรฐานหรือข้อกำหนดจาก Docker, Inc. ที่สร้างพื้นฐานของเครือข่ายคอนเทนเนอร์ในสภาพแวดล้อม Docker แนวทางของนักเทียบท่านี้จัดให้มีเครือข่ายคอนเทนเนอร์ที่รองรับไดรเวอร์เครือข่ายหลายตัว


34. Docker รองรับ IPV6 หรือไม่

ใช่ Docker ให้การสนับสนุน IPv6 รองรับเครือข่าย IPv6 บน Docker daemons ที่ทำงานบนโฮสต์ Linux เท่านั้น อย่างไรก็ตาม หากคุณต้องการเปิดใช้งานการสนับสนุน IPv6 ใน Docker daemon คุณต้องแก้ไข /etc/docker/daemon.json และตั้งค่าคีย์ ipv6 เป็น true


35. คุณจะสูญเสียข้อมูลเมื่อคอนเทนเนอร์ออกหรือไม่?

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


36. Docker มี Volume Mount ประเภทใดบ้าง?

Bind mounts- สามารถจัดเก็บไว้ที่ใดก็ได้บนระบบโฮสต์


37. จะกำหนดค่าไดรเวอร์การบันทึกเริ่มต้นภายใต้ Docker ได้อย่างไร

เพื่อกำหนดค่า Docker daemon ให้เป็นค่าเริ่มต้นสำหรับไดรเวอร์การบันทึกเฉพาะ คุณต้องตั้งค่าของ log-driver เป็นชื่อของไดรฟ์การบันทึก daemon.jason.fie


38. อธิบาย Docker Trusted Registry หรือไม่

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


39. เนมสเปซ Docker คืออะไร

เนมสเปซใน Docker เป็นเทคนิคที่นำเสนอพื้นที่ทำงานแบบแยกที่เรียกว่าคอนเทนเนอร์ เนมสเปซยังเสนอชั้นการแยกสำหรับคอนเทนเนอร์นักเทียบท่าด้วย


40. ส่วนประกอบทั้งสามของ Docker คืออะไร Archiเทคเจอร์

  • ไคลเอนต์
  • นักเทียบท่า-โฮสต์
  • รีจิสทรี

41. ลูกค้าคืออะไร?

Docker จัดเตรียมเครื่องมือ Command Line Interface ให้กับลูกค้าเพื่อโต้ตอบกับ Docker daemon


42. Docker_Host มีจุดประสงค์อะไร?

ประกอบด้วยคอนเทนเนอร์ รูปภาพ และ Docker daemon มันมีสภาพแวดล้อมที่สมบูรณ์เพื่อดำเนินการและรันแอปพลิเคชันของคุณ


43. ฉันจะรันไฟล์ Compose หลายชุดบนโฮสต์เดียวกันได้อย่างไร?

Compose ใช้ชื่อโปรเจ็กต์ซึ่งช่วยให้คุณสร้างตัวระบุที่ไม่ซ้ำกันสำหรับคอนเทนเนอร์และทรัพยากรอื่นๆ ของโปรเจ็กต์ทั้งหมดได้ หากต้องการเรียกใช้โปรเจ็กต์หลายชุด ให้ตั้งชื่อโปรเจ็กต์ที่กำหนดเองโดยใช้ตัวเลือกบรรทัดคำสั่ง หรือใช้ตัวแปรสภาพแวดล้อม COMPOSE_PROJECT_NAME

คำถามสัมภาษณ์เหล่านี้จะช่วยในวีว่าของคุณ (วาจา)