การ Deploy โค้ดจาก Git Repository ใน Plesk — Git Integration ใน Plesk คือคุณลักษณะที่มีประโยชน์มาก ช่วยให้การพัฒนาเป็นไปอย่างรวดเร็วและสะดวก เนื่องจากคุณสามารถเชื่อมต่อไปยังเซิร์ฟเวอร์ของคุณและดึงข้อมูลโค้ดโดยตรงจาก Git Repositories เช่น GitHub, GitLab, หรือ Bitbucket ได้โดยใช้ Webhooks สำหรับการ Deploy อัตโนมัติ ซึ่งเป็นส่วนสำคัญของ DevOps Modern Workflow
วิธีการ Deploy โค้ดจาก Git Repository
Git Integration ใน Plesk เปิดให้คุณทำสิ่งต่อไปนี้:
- ดึงโค้ดจาก Git Repository มาไปยังเซิร์ฟเวอร์โดยโดยตรง
- เลือก Branch ต่างๆ สำหรับ Git Deployment
- ตั้งค่า Webhook สำหรับ Auto Deploy เมื่อมี Push
- ตรวจสอบประวัติการ Deploy และข้อมูลการเปลี่ยนแปลงโค้ด
ขั้นตอนการตั้งค่า Git Integration
- ขั้นที่ 1 – เข้าสู่ Plesk Control Panel: เข้าสู่ Plesk ด้วยชื่อผู้ใช้และรหัสผ่านของคุณ
- ขั้นที่ 2 – เลือกโดเมน: ผ่าน “Websites & Domains” และคลิกเลือกโดเมนที่ต้องการ Git Deployment
- ขั้นที่ 3 – กด “Git Repositories” หรือ “Git”: ดูตัวเลือก Git ในเมนูของ Plesk
- ขั้นที่ 4 – แสดง Git Repository URL: ป้อน Git Repository URL ในรูปแบบ https:// หรือ SSH จาก GitHub, GitLab หรือ Bitbucket
- ขั้นที่ 5 – เลือก Branch: เลือก Branch ที่ต้องการ เช่น main, master, development, หรือ staging
- ขั้นที่ 6 – คลิก “Clone”: คลิก “Clone” หรือ “Pull” เพื่อดึงโค้ด Plesk จาก Git Repository
- ขั้นที่ 7 – ตั้งค่า Deploy Path: กำหนด Deploy Path เส้นทางเช่น /var/www/vhosts/yourdomain.com/httpdocs หรือกำหนดเอง หากต้องการตำแหน่งอื่น
การตั้งค่า SSH Keys สำหรับการรักษาความปลอดภัยของ Push Access
เพื่อความปลอดภัย คุณควรตั้งค่า SSH Key และเพิ่ม Public Key ทั้งใน Plesk และในแพลตฟอร์มของ Repository เช่น GitHub, GitLab หรือ Bitbucket ใช้ Deploy Keys เพื่อกำหนดการเข้าถึงเฉพาะ Repository นั้นๆ โปรดศึกษา วิธีเชื่อม SSH Terminal ใน Plesk เพื่อเรียนรู้การจัดการ SSH Keys
ตั้งค่า Webhook สำหรับ Auto Deploy
เพื่อให้ทำการ Deploy อัตโนมัติเมื่อมี Push ไปยัง Repository คื่ Webhook URL ที่กำหนดโดย Plesk หน้า Plesk จะให้ Webhook URL ให้คุณ จากนั้นตั้งค่า GitHub/GitLab Webhook เพื่อให้โค้ดสามารถ Deploy อัตโนมัติทุกครั้งที่มี Push เข้ามา ช่วยในการดำเนิน DevOps Workflow ให้ทำงานได้อย่างมีประสิทธิภาพและรวดเร็ว
การจัดการ Composer ใน Plesk
สำหรับ Project PHP ที่ใช้ Composer Dependency Management ควรดำเนินการหลังจาก Deploy โค้ดเสร็จสิ้น คุณสามารถติดตั้งและกำหนดค่า Composer ใน Plesk โดยใช้ SSH Terminal หรือการรัน Post-Deploy Scripts โปรดศึกษา วิธีติดตั้ง PHP Composer ใน Plesk เพื่อทำความเข้าใจเพิ่มเติม
ตั้งค่า Node.js หรือ Ruby Project
สำหรับโค้ดที่เขียนด้วย Node.js หรือ Ruby Plesk มีการสนับสนุนสำหรับการจัดการเซิร์ฟเวอร์ JavaScript และ Ruby ที่แตกต่างกัน โปรดศึกษา วิธีใช้ Node.js Toolkit ใน Plesk เพื่อเรียนรู้เพิ่มเติม
เคล็ดลับและข้อควรระวัง
- ✅ ตั้งค่า SSH Key อย่างปลอดภัยทั้งใน Plesk และ Git Repository
- ✅ ตั้งค่า Webhook เพื่อให้ Auto Deploy ทำงานได้เมื่อมี Push เข้ามา
- ✅ ใช้ Webhook สำหรับการ Deploy อัตโนมัติเพื่อประหยัดเวลาและลดข้อผิดพลาด
- ✅ ตรวจสอบสิทธิการเข้าถึงไฟล์และโฟลเดอร์ให้ถูกต้อง
- ⚠️ อย่า Push Sensitive Files (API Keys, Passwords) ไป Git Repository
- ⚠️ ตรวจสอบสิทธิการเข้าถึงในแต่ละ Branch ของ Repository
คำถามที่พบบ่อย (FAQ)
Q: สามารถเปลี่ยน Branch ได้หรือไม่?
A: ได้ คุณสามารถเปลี่ยน Branch ได้ผ่าน Plesk หรือใช้ SSH Keys ที่ให้สิทธิการเข้าถึง Repository
Q: Webhook คืออะไร?
A: Webhook คือการเชื่อมต่อที่ Git Repository ส่งไปยัง Server เมื่อมี Push เพื่อให้ Server Pull โค้ดใหม่โดยอัตโนมัติ ช่วยในการดำเนิน Continuous Deployment
Q: สามารถจัดการ SSL ได้ภายใน Plesk หรือไม่?
A: ได้ Plesk สามารถจัดการ SSL Certificate ได้ โดยจะใช้ HTTPS เมื่อ Deploy โค้ดจาก Repository
Q: สามารถตั้งค่า Cron Job หรือ Scheduled Task ได้หรือไม่?
A: ได้ คุณสามารถตั้งค่า Cron Job ได้ผ่าน Plesk โปรดศึกษา วิธีตั้งค่า Cron Job ใน Plesk เพื่อรายละเอียดเพิ่มเติม
สรุป
การ Deploy โค้ดจาก Git Repository ใน Plesk เป็นวิธีที่มีประสิทธิภาพและเหมาะสมสำหรับการจัดการ DevOps Workflow และ Continuous Integration/Continuous Deployment (CI/CD) โดยการตั้งค่า Git Integration ให้ถูกต้อง ตั้งค่า SSH Key ให้ปลอดภัย ตั้งค่า Webhook เพื่อเปิดใช้งาน Auto Deploy และจัดการเซิร์ฟเวอร์เพื่อให้รองรับเว็บแอปพลิเคชันที่มีโครงสร้างที่ดี คุณสามารถ Deploy โค้ดได้อย่างรวดเร็วและปลอดภัย ลดความเสี่ยงจากข้อผิดพลาดของมนุษย์ และปรับปรุงประสิทธิภาพของทีม Dot Enterprise Cloud VPS และ Cloud Hosting ที่คุณใช้งาน
