ข้ามไปที่เนื้อหาหลัก

การใช้งาน docker Desktop บน windows

 

Docker Desktop คือเครื่องมือแบบ all-in-one ที่ช่วยให้คุณสามารถพัฒนา, รัน และจัดการ container บนระบบปฏิบัติการ Windows และ macOS ได้อย่างง่ายดาย โดย Docker Desktop มาพร้อมกับทุกสิ่งที่คุณต้องการสำหรับการทำงานกับ Docker รวมถึง:

  1. Docker Engine: ซึ่งเป็นหัวใจหลักของ Docker ที่ใช้ในการสร้างและรัน container
  2. Docker CLI (Command Line Interface): เครื่องมือสำหรับการจัดการ Docker ผ่านคำสั่งใน terminal หรือ command prompt
  3. Docker Compose: เครื่องมือสำหรับการจัดการ container หลายตัวพร้อมกันด้วยไฟล์ docker-compose.yml
  4. Docker Dashboard: อินเตอร์เฟซแบบกราฟิกที่ช่วยให้คุณสามารถดูและจัดการ container, image, network, และ volume ได้อย่างง่ายดายโดยไม่ต้องใช้คำสั่ง
  5. Kubernetes (เป็นทางเลือก): สำหรับผู้ที่ต้องการทดสอบหรือพัฒนาแอปพลิเคชันบน Kubernetes, Docker Desktop มี Kubernetes cluster ในตัวที่สามารถเปิดใช้งานได้จากการตั้งค่า

คุณสมบัติหลักของ Docker Desktop

  • การติดตั้งง่าย: Docker Desktop มีตัวติดตั้งที่ออกแบบมาให้ใช้งานได้ง่าย โดยไม่จำเป็นต้องติดตั้งส่วนประกอบเพิ่มเติมหลายๆ ส่วนด้วยตนเอง
  • การอัพเดตอัตโนมัติ: Docker Desktop จะมีการอัพเดตเพื่อเพิ่มฟีเจอร์ใหม่ๆ และปรับปรุงความปลอดภัย
  • การรวมกับ WSL 2 (สำหรับ Windows): Docker Desktop ใช้ WSL 2 เป็น backend สำหรับการทำงานร่วมกับ Linux container บน Windows ได้อย่างมีประสิทธิภาพ
  • การจัดการทรัพยากร: ผู้ใช้สามารถปรับแต่งการใช้ทรัพยากรของ Docker เช่น CPU, RAM และ Disk space ผ่านการตั้งค่าได้ตามต้องการ
  • การพัฒนาและทดสอบแอปพลิเคชัน: Docker Desktop ช่วยให้คุณสามารถพัฒนาและทดสอบแอปพลิเคชันใน container ซึ่งทำให้การย้ายแอปพลิเคชันจากเครื่องพัฒนาไปยังสภาพแวดล้อมจริง (production) ทำได้ง่ายขึ้นและมีปัญหาน้อยลง
ขั้นตอนการใช้งาน Docker Desktop
  1. ดาวน์โหลด Docker Desktop:

  2. การติดตั้ง:

    • รันไฟล์ติดตั้งที่ดาวน์โหลดมา จากนั้นทำตามขั้นตอนที่ปรากฏขึ้นเพื่อเสร็จสิ้นการติดตั้ง
    • Docker Desktop จะขอให้เปิดใช้งาน WSL 2 (Windows Subsystem for Linux) หากยังไม่ได้เปิดใช้งาน ให้ทำการติดตั้ง WSL 2 ตามคำแนะนำของ Docker
  3. เปิด Docker Desktop:

    • เมื่อการติดตั้งเสร็จสิ้น คุณสามารถเปิด Docker Desktop ได้จากเมนู Start หรือจากไอคอนที่แสดงใน system tray
    • Docker Desktop อาจต้องให้คุณเข้าสู่ระบบด้วยบัญชี Docker (คุณสามารถสมัครฟรีได้ที่เว็บไซต์ Docker)

2. การตั้งค่า WSL 2

  • Docker Desktop ใช้ WSL 2 เป็น backend โดยสามารถเลือกที่จะใช้ Ubuntu หรือ distribution อื่นๆ ที่ติดตั้งผ่าน WSL ได้
  • ตรวจสอบว่า WSL 2 ถูกเปิดใช้งานแล้วด้วยการเปิด Command Prompt หรือ PowerShell แล้วใช้คำสั่ง wsl --list --verbose เพื่อดู distribution ที่ใช้งานอยู่

3. การใช้งาน Docker Desktop

  1. ตรวจสอบการติดตั้ง:

    • เปิด Command Prompt หรือ PowerShell แล้วพิมพ์ docker version เพื่อดูว่าการติดตั้ง Docker เสร็จสมบูรณ์หรือไม่
    • ใช้คำสั่ง docker info เพื่อตรวจสอบรายละเอียดของ Docker และสภาพแวดล้อมการทำงาน
  2. ดึงและรัน Container:

    • ลองรัน container พื้นฐานโดยใช้คำสั่ง docker run hello-world ซึ่งจะทำการดึงภาพ hello-world จาก Docker Hub และรันใน container บนเครื่องคุณ
    • หากคุณต้องการรัน container ที่ใช้ร่วมกับ application อื่นๆ ให้ใช้คำสั่ง docker pull <ชื่อภาพ> เพื่อดึงภาพลงมาก่อน จากนั้นใช้ docker run เพื่อรัน container
  3. การจัดการ Container:

    • คุณสามารถใช้ Docker Dashboard ที่มากับ Docker Desktop เพื่อตรวจสอบและจัดการ container, image, และ volume ต่างๆ โดยไม่ต้องใช้คำสั่งใน command line
    • ใน Docker Dashboard คุณสามารถดู container ที่กำลังรันอยู่, หยุด container, และลบ container ที่ไม่ต้องการได้อย่างง่ายดาย
  4. การใช้ Docker Compose:

    • Docker Desktop รองรับ Docker Compose ซึ่งเป็นเครื่องมือที่ช่วยจัดการ container หลายๆ ตัวพร้อมกัน
    • สร้างไฟล์ docker-compose.yml เพื่อกำหนดบริการที่ต้องการรัน จากนั้นใช้คำสั่ง docker-compose up เพื่อเริ่มบริการทั้งหมดพร้อมกัน 
    • ถ้าต้องการใช้ docker compose แบบ reset ค่าทั้งหมดให้ใช้ docker-compose up --build -d
    • คุณสามารถใช้ Docker Dashboard ในการจัดการบริการที่รันจาก Docker Compose ได้เช่นกัน

4. การตั้งค่า Docker Desktop

  • Resources: ใน Docker Desktop คุณสามารถกำหนดค่า resources เช่น CPU, RAM, และ Disk Space ที่ Docker สามารถใช้ได้
  • WSL Integration: เลือก distribution ของ WSL ที่ต้องการใช้งานร่วมกับ Docker Desktop ผ่านเมนู Settings
  • Kubernetes: Docker Desktop รองรับ Kubernetes ในตัว ซึ่งสามารถเปิดใช้งานได้จากเมนู Settings เพื่อใช้ในการจัดการ container ในรูปแบบ cluster

5. การบำรุงรักษา

  • การอัพเดต: Docker Desktop จะมีการอัพเดตเป็นระยะๆ ควรทำการอัพเดตเพื่อความเสถียรและความปลอดภัย
  • การทำความสะอาด: ใช้คำสั่ง docker system prune เพื่อทำความสะอาด container, image, และ volume ที่ไม่ได้ใช้งาน

การใช้งาน Docker Desktop บน Windows จะช่วยให้คุณสามารถสร้างและจัดการ container ได้อย่างสะดวกและมีประสิทธิภาพ ซึ่งเหมาะสำหรับการพัฒนาและทดสอบแอปพลิเคชันในสภาพแวดล้อมที่หลากหลาย

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

การจองสมาร์ทรูม (Smart Room) สำนักหอสมุดกลาง

                ในยุคที่เทคโนโลยีและนวัตกรรมดิจิทัลเข้ามามีบทบาทสำคัญในสายงานต่าง ๆ สำนักหอสมุดกลาง ก็ได้นำเทคโนโลยีสมาร์ทรูม (Smart Room) เข้ามาใช้ในการบริการนักศึกษา เพื่อเพิ่มประสิทธิภาพในการเข้าถึงข้อมูลและทรัพยากรสารสนเทศต่าง ๆ ได้อย่างมีประสิทธิผลและสะดวกสบายมากขึ้น                Smart Room เป็นพื้นที่การเรียนรู้ที่ใช้เทคโนโลยีล้ำสมัย ออกแบบมาเพื่อตอบสนองความต้องการของนักศึกษาและบุคลากรในการค้นคว้า วิจัย และทำงานร่วมกัน ซึ่งจะช่วยส่งเสริมให้เกิดบรรยากาศการเรียนรู้ที่ทันสมัยและสนับสนุนการใช้ทรัพยากรสารสนเทศในรูปแบบที่มีประสิทธิภาพมากยิ่งขึ้น   โดยสามารถเข้าจองสมาร์ทรูม ( Smart Room) ไดัตามขั้นตอนดังต่อไปนี้                ขั้นตอนที่ 1 เข้าเว็บไซต์ของสำนักหอสมุดกลาง มหาวิทยาลัยเทคโนโลยีพระจอมเกล้าพระนครเหนือ ผ่านทาง https://library.kmutnb.ac.th จากนั้นเลือกเมนู จองห้องออนไลน์ ดังภาพที่ 1           ...

การเขียนโปรแกรมภาษา Python Socket IO

Socket.IO คืออะไร      Socket.IO เป็นไลบรารีที่ช่วยให้สามารถสร้างการสื่อสารแบบเรียลไทม์ระหว่างไคลเอนต์และเซิร์ฟเวอร์ โดยใช้โปรโตคอล WebSocket ซึ่งสามารถใช้ในการพัฒนาแอปพลิเคชันที่ต้องการการสื่อสารสองทางแบบเรียลไทม์ เช่น แชทแอปพลิเคชัน เกมออนไลน์ หรือการแจ้งเตือนแบบเรียลไทม์ การติดตั้ง Socket.IO ใน Python ก่อนที่จะเริ่มต้นพัฒนา คุณจำเป็นต้องติดตั้งไลบรารีที่เกี่ยวข้อง โดยสามารถติดตั้งได้ง่าย ๆ ผ่าน pip:     pip install flask flask-socketio ตัวอย่างของการเขียน python โดยใช้ socket IO ควบคุมห้อง Smart Room  import socketio sio = socketio.Client(reconnection=True, reconnection_attempts=5, reconnection_delay=1) # สร้างไคลเอนต์ Socket.IO sio = socketio.Client() @sio.event def connect():     now = datetime.now()     print('connection established',now) @sio.event def control(data):     #ทำงานเมื่อมีเหตุการใน Event API Funtion Control  @sio.event def disconnect():     now = datetime.now()     print('disconn...