ภาพรวมการ Deploy อัตโนมัติ
คู่มือนี้เรียบเรียงสำหรับ Ruk-Com PaaS หน้าจอและตัวเลือกอาจแตกต่างตามเวอร์ชันและสิทธิ์ของบัญชี
ตรวจสอบ Environment, Region, สิทธิ์บัญชี และสำรองค่าปัจจุบันก่อนดำเนินการกับระบบจริง
ตรวจสอบชื่อเมนู ตัวเลือก และข้อกำหนดล่าสุดจากเนื้อหาภาษาอังกฤษในหน้าเดียวกันก่อนดำเนินการกับระบบจริง
วัตถุประสงค์
บทความนี้อธิบายการใช้งาน ภาพรวมการ Deploy อัตโนมัติ บน Ruk-Com Cloud PaaS โดยจัดลำดับขั้นตอนและจุดตรวจสอบสำหรับการนำไปใช้งานจริง
ก่อนเริ่มดำเนินการ
- เข้าสู่ระบบด้วยบัญชีที่มีสิทธิ์จัดการ Environment ที่เกี่ยวข้อง
- ตรวจสอบชื่อ Environment, Region และ Resource เป้าหมายก่อนบันทึกการเปลี่ยนแปลง
- สำรองข้อมูลหรือกำหนดแผนย้อนกลับก่อนแก้ไขระบบ Production

เพื่อเพิ่มประสิทธิภาพการผลิตในฐานะนักพัฒนา Ruk-Com Cloud จัดเตรียมการตั้งค่าการ deploy โดยอัตโนมัติซึ่งเกิดขึ้นเป็นระยะเวลาของโปรเจกต์โดยอัตโนมัติ ในลักษณะดังกล่าวควรตรวจสอบให้แน่ใจว่ามีการฝสานรวมอย่างต่อเนื่องกับ Application Server ที่เกี่ยวข้อง การ deploy ซ้ำเกิดขึ้นตามการเปลี่ยนแปลงที่ใช้กับที่เก็บระยะไกลที่เหมาะสม ดังนั้นคุณจึงทำงานได้ง่ายผ่านบริการ Git/SVN
เพียงอัปเดต Code ของคุณและ commit การเปลี่ยนแปลงทั้งหมดในโปรเจกต์ VCS จะถูก push ไปยัง production environment โดยอัตโนมัติหลังจากช่วงเวลาที่กำหนดและเพื่อให้แตกต่างจาก Git hooks, ฟีเจอร์ auto-deploy ไม่จำเป็นต้องกำหนดค่าใดๆเพิ่มเติม
ในส่วนของ Git repository และการทำงานร่วมกับ SVN ดูขั้นตอนการทำงานด้านล่าง
การเตรียมโปรเจ็กต์
1. เริ่มต้นด้วยการเตรียมEnvironmentCloud รักคอมเพื่อเพิ่มเติมโปรเจกต์ที่ต้องการด้วย Code จาก Git/SVN
เพิ่มเติม:
-สำหรับ Java environments นั้นจำเป็นต้องเพิ่ม marven node สำหรับการสร้างและการพุช Code ไปยัง Application Server ที่เหมาะสม
-สำหรับภาษาอื่นๆจะได้รับการจัดการโดย compute nodes ที่เกี่ยวข้องกันด้วยตัวเอง
เราจะยกตัวอย่างของ Maven build node สำหรับ Java อย่างไรก็ตาม Application Server อื่นๆสามารถกำหนดค่าได้เช่นเดียวกัน
2. เมื่อ environment ของคุณถูกสร้างขึ้นแล้ว คลิกปุ่มเพิ่มโครงการถัดจาก node ที่เหมาะสม (เช่นมาเวนสำหรับ Java หรือ Application Server สำหรับภาษาอื่น)

3. ในหน้าต่างที่เปิดขึ้น สลับไปที่แท็บ VCS ที่ใช้และกรอกข้อมูลในฟิลด์ที่จำเป็น: แทรกURLไปยังที่เก็บที่จำเป็น, ระบุรายละเอียดรับรองความถูกต้องและกำหนดชื่อสำหรับบริบทที่ Application ที่คุณจะวางไว้
นอกจากนี้ ในกรณีของการใช้งาน Maven build node คุณต้องระบุชื่อเพิ่มเติมสำหรับโปรเจ็กต์และ environment ที่คุณต้องการ deploy เพิ่มเติม

เคล็ดลับ:หากคุณต้องการรายละเอียดเพิ่มเติมเกี่ยวกับตัวเลือกเหล่านี้ โปรดอ่านคำแนะนำที่เกี่ยวข้องจากรายการด้านล่างตาม Application ที่คุณใช้งานอยู่
-Maven สำหรับ Deploy ผ่าน Git/SVN
-Deploy PHP Projects ผ่าน Git/SVN
-Deploy Ruby Project ผ่าน Git/SVN
-Deploy Python Projects ผ่าน Git/SVN
-Deploy Node.js Project ผ่าน Git/SVN
การตั้งค่าการอัปเดตโปรเจ็กต์อัตโนมัติ
ตอนนี้ตามที่คุณระบุข้อมูลสำคัญทั้งหมดสำหรับการ deploy คุณอาจดำเนินการกำหนดค่าการอัปเดตโปรเจกต์ของคุณอัตโนมัติ
1. ทำเครื่องหมายถูกที่บรรทัดตรวจสอบและ Deploy การอัปเดตอัตโนมัติเพื่อเปิดใช้งานและขยายส่วนที่เกี่ยวข้อง

ตัวเลือกตรวจสอบตรวจสอบทุก (นาที) โดยจะแสดงให้เห็นเพื่อกำหนดความถี่ของการตรวจสอบที่จัดเก็บสำหรับ commit ใหม่ซึ่งถูก push ตั้งแต่การตรวจสอบครั้งล่าสุด
คุณสามารถคาดการณ์ได้ง่ายจากชื่อตัวเลือกโดยจะระบุเป็นนาที ตัวอย่างเช่น หากคุณตั้งค่าช่วงเวลา 1 นาทีการตรวจสอบจะทำทุกนาทีและหากคุณระบุช่วงเวลา 1440 นาทีการตรวจสอบจะทำวันละครั้ง
เพิ่มเติม:
-หากช่วงเวลาการตรวจสอบน้อยกว่าเวลาที่จำเป็นในการสร้างหรือ deploy โปรเจกต์ task ต่อไปจะรออยู่ในคิวจนกว่าการดำเนินการเหล่านี้จะเสร็จสิ้น
-ในกรณีที่ application server layer มีหลาย nodes โปรดพิจารณารายละเอียดเกี่ยวกับลำดับการอัปเดต
2. ผลของการกำหนดค่าเหล่านี้ (ซึ่งแม้จะใช้คำอธิบายยาวแต่ก็ใช้เวลาน้อยกว่าหนึ่งนาทีในการระบุ) หากมีการเปลี่ยนแปลงใดๆที่ source ของ Application การเปลี่ยนแปลงเหล่านั้นจะถูกสร้างขึ้นและ deploy โดยอัตโนมัติ (สำหรับโปรเจ็กต์ Java) หรือเพียงแค่ใช้การอัปเดตโปรเจกต์ (สำหรับภาษาที่เหลือ) หนึ่งครั้งตามระยะเวลาที่กำหนด
คลิกเพิ่มเพื่อยืนยัน
เคล็ดลับ:เฟรมนี้ยังรวมถึงการตั้งค่าเพิ่มเติมซึ่งอาจมีประโยชน์สำหรับการจัดการ การทำงานร่วมกันที่เหมาะสมของระบบกับที่จัดเก็ยระยะไกลของคุณ
- ตัวเลือกชำระเงินตอนนี้(นำเสนอสำหรับภาษาที่ไม่ใช่ Java) เพื่อระบุว่าคุณต้องการ deploy project ของคุณทันทีหลังจากเพิ่มหรือเลื่อนการดำเนินการนี้ (สำหรับการเริ่มด้วยตนเองในภายหลังหรือดำเนินการโดยอัตโนมัติระหว่างการชำระเงินเพิ่มเติมครั้งแรกโดยฟีเจอร์การ deploy อัตโนมัติที่เปิดใช้งาน)
- ตัวเลือกแก้ไขข้อขัดแย้งอัตโนมัติยังคงเปิดใช้งานตามค่าเริ่มต้นและแสดงถึงความคล้ายคลึงของคำสั่ง git reset –hard เพื่อป้องกันไม่ให้เกิดข้อขัดแย้งในการผสานระหว่างการอัปเดตโปรเจ็กต์ครั้งต่อๆไป ซึ่งอาจเกิดขึ้นได้หากมีการแก้ไขไฟล์เดียวกันทั้งในที่จัดเก็บระยะไกลและโปรเจ็กต์ของคุณ หาก Ruk-Com Cloud เกิดปัญหาดังกล่าวไฟล์ที่ขัดแย้งจะได้รับการอัปเดตตามเวอร์ชันที่จัดเก็บ (ซึ่งถือว่าเป็นไฟล์ที่ถูกต้อง) โดยจะละทิ้งการเปลี่ยนแปลงที่ทำในเครื่อง เราขอแนะนำว่าอย่าปิดการใช้งานตัวเลือกนี้เว้นแต่คุณจะรู้ว่าคุณกำลังทำอะไรอยู่
- ตัวเลือกเปิดใช้งาน การใช้งานแบบไม่ต้องหยุดทำงาน(ปัจจุบันใช้ได้สำหรับ PHP เท่านั้น) อนุญาตให้ deploy การอัปเดต Application อย่างต่อเนื่องซึ่งอยู่ที่ ROOT context โดยการทำงานของ Application จะไม่หยุดชะงัก หากเปิดใช้งานกรณีนี้ตัวเลือกของคุณจะถูกจดจำและใช้ในระหว่างการอัปเดตอัตโนมัติที่ตามมาทั้งหมด
ติดตามการอัปเดตอัตโนมัติ
ในการตรวจสอบการประมวลผลการ deploy อัตโนมัติและผลลัพธ์คุณสามารถดู Log Fileเข้าสู่ระบบที่เหมาะสม (ชื่อvcs_update) สำหรับแอป Server หรือ Maven node

หมายเหตุ:คุณยังสามารถกำหนดค่าการ deploy ของคุณใหม่ผ่านการตั้งค่าแอป Git/SVN โดยไปที่ environment ของคุณและเลือกปุ่มแก้ไขถัดจากโปรเจกต์ที่เหมาะสมคุณจะเห็นเฟรมที่เปิดอยู่คล้ายกับเฟรมที่ใช้สำหรับการเพิ่มโปรเจกต์โดยคุณสามารถเปลี่ยนสถานะสำหรับตัวเลือกใดๆที่อธิบายไว้ข้างต้นได้ (เพียงคลิกที่สมัครเพื่อยืนยันการตั้งค่าใหม่)
นั่นคือทั้งหมด! เพียงกำหนดค่าง่ายๆเหล่านี้ในขณะที่เพิ่มโปรเจกต์ไปยัง Ruk-Com Cloud และอย่าลังเลที่จะทำงานกับ Code ของคุณต่อไปผ่าน Git/SVN Repository โดยไม่ต้องกลับมาที่ Dashboard อีกครั้ง คุณสามารถวางใจได้ว่าทุกอย่างจะทันสมัยอยู่เสมอในการผลิตของคุณโดยอัตโนมัติ
