document_cover
VS Code: พัฒนาแอปใน Docker Container บน Server ระยะไกล ด้วยการเชื่อมต่อแบบ 2 ชั้น
vscodesshdockerremotedevelopmentdevcontainersconfig
29 ต.ค. 68 , 13:47
เรียนรู้วิธีตั้งค่า VS Code เพื่อเชื่อมต่อผ่าน SSH ไปยัง Server และใช้ส่วนขยาย Dev Containers เพื่อ "ทะลุ" เข้าไปแก้ไขไฟล์โค้ดที่รันอยู่ใน Docker Container โดยตรง

การพัฒนาแอปในปัจจุบันมักจะรันอยู่บน Docker Container ที่อยู่บน Server การใช้ VS Code ช่วยให้เราสามารถเข้าไปแก้ไขโค้ดได้โดยตรงเสมือนทำงานอยู่ในเครื่องนั้น

กระบวนการนี้แบ่งเป็น 2 ขั้นตอนหลัก:



1. เชื่อมต่อไปยัง Server ด้วย Remote - SSH

สิ่งแรกคือการเชื่อมต่อจากเครื่องของเราไปยัง Server ปลายทาง

ติดตั้ง Extension: Remote - SSH (จาก Microsoft)
ตั้งค่าการเชื่อมต่อ: เราสามารถตั้งค่าที่อยู่, User, Port และไฟล์ Key (.pem) ไว้ในไฟล์ config ของ SSH (เช่น ที่ ~/.ssh/config หรือ C:\Users\YourUser\.ssh\config) เพื่อความสะดวก

ตัวอย่างไฟล์ config:

IdentityFile: คือตำแหน่งที่เก็บไฟล์ .pem ของคุณ
Port: คือพอร์ต SSH ที่ Server ใช้ (ถ้าไม่ใช่ 22)

เมื่อตั้งค่าเสร็จแล้ว กด F1 เลือก Remote-SSH: Connect to Host... และเลือก Host ที่ตั้งค่าไว้



2. "ทะลุ" เข้าไปยัง Docker Container

เมื่อ VS Code เชื่อมต่อกับ Server เรียบร้อยแล้ว (สถานะเป็น SSH: 10.1.1.201) เราจะทำการเชื่อมต่อชั้นที่สองเข้าไปยัง Container

ติดตั้ง Extension: Dev Containers (จาก Microsoft)
เชื่อมต่อ Container: กด F1 (ขณะที่ยังเชื่อมต่อ SSH อยู่)
เลือกคำสั่ง Dev Containers: Attach to Running Container...
VS Code จะแสดงรายการ Container ทั้งหมดที่กำลังรันอยู่บน Server นั้น ให้คุณเลือก Container ที่ต้องการ

หลังจากนั้น VS Code จะรีโหลดหน้าต่างอีกครั้ง และตอนนี้... คุณกำลังแก้ไขไฟล์และใช้ Terminal ที่อยู่ ภายใน Docker Container นั้นโดยตรงครับ