Ruk-Com Cloud PaaS รองรับการ deploy อัตโนมัติของแอปพลิเคชันหลากหลายวิธีซึ่งช่วยให้เลือกตัวเลือกที่เหมาะสมที่สุดซึ่งจะเหมาะกับความต้องการของคุณโดยเฉพาะ:
- Dashboard – การ deploy ผ่านไฟล์เก็บถาวร (ระบุเป็นไฟล์ในเครื่องหรือ URL)
- VCS – อนุญาตให้ deploy จากที่เก็บ VCS ของคุณ (เช่น Git, SVN, Bitbucket)
- Hub Registry – สร้างคอนเทนเนอร์แบบกำหนดเองด้วยแอปพลิเคชันของคุณตาม Docker image ที่จัดเก็บไว้ใน public หรือ private registry
- Plugins – deploys โปรเจกต์โดยใช้หนึ่งในเครื่องมือพัฒนาซอฟต์แวร์ยอดนิยม (Ant Task, Eclipse, Intellij IDEA, Maven หรือ NetBeans) เพื่อรวมเข้ากับแพลตฟอร์ม
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับสองตัวเลือกสุดท้ายให้ดูจาก links ที่เหมาะสม ในคู่มือนี้เราจะอธิบายการ deploy ผ่านที่เก็บถาวรและที่จัดเก็บ VCS สามารถเรียกได้จาก Deployment Manager หรือวางเมาส์เหนือ Deployments และเลือกตัวเลือกที่คุณต้องการ
สองไอคอนแรกคือ (Local file และ URL) ที่สอดคล้องกับการ deploy ผ่าน Archive และไอคอนสุดท้ายคือ (Git / SVN) – เพื่อ deploy จาก VCS repository
เลือกตัวเลือกที่เหมาะสมและคลิกเพื่อดำเนินการกำหนดค่าการ deploy ของคุณ
หมายเหตุ:
– การ deploy ประเภท VCS สำหรับ Java application servers จะดำเนินการโดยใช้ Maven build node โปรดดูรายละเอียดเพิ่มเติมในลิงก์คู่มือ
– การดำเนินการ .NET deployment สำหรับแอปพลิเคชันเซิร์ฟเวอร์ IIS ที่ใช้ Windows นั้นแตกต่างจากโฟลว์มาตรฐานที่อธิบายไว้ในคู่มือนี้
Archive Deployment Configurations
การดำเนินการนี้ง่ายมากและสามารถทำได้เพียงไม่กี่วินาทีโดยการตั้งค่าพารามิเตอร์หลัก 2 ตัว (เช่น จัดเตรียมเก็บไฟล์ถาวรที่จำเป็นและระบุ environment เป้าหมาย) การ deploy สามารถปรับให้เข้ากับความต้องการของคุณโดยเฉพาะโดยการปรับเปลี่ยนการกำหนดค่าเพิ่มเติม
ในส่วนของด้านล่างนี้จะอธิบายโดยละเอียดเกี่ยวกับตัวเลือกภายในเฟรม:
- Local file (or URL) – ชี้ไปที่ไฟล์เก็บถาวรที่จะ deploy (จะถูกเลือกโดยอัตโนมัติเมื่อติดตั้งจาก Deployment Manager)
- Environment – เลือก environment เป้าหมายด้วยแอปพลิเคชันเซิร์ฟเวอร์ (จะถูกเลือกโดยอัตโนมัติเมื่อติดตั้งจากแอปพลิเคชันเซิร์ฟเวอร์)
- Path – ตั้งค่าสภาพแวดล้อมที่กำหนดเองตามความต้องการของคุณ ตัวเลือกนี้ขึ้นอาจถูกจำกัดเนื่องจากภาษาของโปรแกรมที่ใช้โดยเฉพาะ (เช่น Python และ Node.js มี path สำหรับการ deploy เดียวที่กำหนดไว้ล่วงหน้า)
- Hooks – ใช้ scripts ที่จัดเตรียมให้ทั้งก่อน/หลังกระบวนการ deploy
- Deploy Strategy (สำหรับการ deploy server ที่ปรับขนาด) – อนุญาตให้เลือกระหว่างตัวแปรการ deploy พร้อมกันที่ค่อนข้างเร็วกว่าซึ่งจะทำให้เกิด downtime ในเวลาสั้นๆ และตัวเลือกการ deploy ตามลำดับจะมี delay เพื่อดำเนินการ deploy บนเซิร์ฟเวอร์ทีละรายการโดยตั้งค่า delay ไว้ระหว่างการดำเนินการซึ่งรับรองว่าแอปพลิเคชันทำงาน
- Enable zero-downtime deployment (สำหรับ PHP server เท่านั้น) – ปรับเปลี่ยน (หากเลือกตัวเลือกนี้) โฟลว์การ deploy เพื่อหลีกเลี่ยงการหยุดทำงานของแอปพลิเคชัน downtime
Git / SVN Deployment Configurations
การดำเนินการนี้ง่ายมากและสามารถทำได้เพียงไม่กี่วินาทีโดยการตั้งค่าพารามิเตอร์หลัก 2 ตัว (เช่น เลือกที่จัดเก็บที่ต้องการ repository จาก Deployment Manager และระบุ environment เป้าหมาย) การ deploy สามารถปรับให้เข้ากับความต้องการของคุณโดยเฉพาะโดยการปรับเปลี่ยนการกำหนดค่าเพิ่มเติม
ในส่วนของด้านล่างนี้จะอธิบายโดยละเอียดเกี่ยวกับตัวเลือกภายในเฟรม:
- Repository – อนุญาตให้เลือก Git / SVN project จาก Deployment Manager (หรือข้ามไปยังแบบฟอร์มเพิ่มเติม)
- Branch – กำหนดสาขาที่ใช้จัดเก็บ (master โดยค่าเริ่มต้น)
- Environment – เลือก environment ด้วยแอปพลิเคชันเซิร์ฟเวอร์ (จะถูกเลือกโดยอัตโนมัติเมื่อติดตั้งจากแอปพลิเคชันเซิร์ฟเวอร์)
- Path – ตั้งค่าสภาพแวดล้อมที่กำหนดเองตามความต้องการของคุณ ตัวเลือกนี้ขึ้นอาจถูกจำกัดเนื่องจากภาษาของโปรแกรมที่ใช้โดยเฉพาะ (เช่น Python และ Node.js มี path สำหรับการ deploy เดียวที่กำหนดไว้ล่วงหน้า)
- Build – (สำหรับการ deploy Java application) อนุญาตให้เลือก Maven build node (หรือเพิ่ม node หนึ่งใน environment เป้าหมาย) และหากจำเป็นให้เลือกที่จัดเก็บ Working Directory
- Hooks – ใช้ scripts ที่จัดเตรียมให้ทั้งก่อน/หลังกระบวนการ deploy
- Deploy Strategy (สำหรับการ deploy server ที่ปรับขนาด) – อนุญาตให้เลือกระหว่างตัวแปรการ deploy พร้อมกันที่ค่อนข้างเร็วกว่าซึ่งจะทำให้เกิด downtime ในเวลาสั้นๆ และตัวเลือกการ deploy ตามลำดับจะมี delay เพื่อดำเนินการ deploy บนเซิร์ฟเวอร์ทีละรายการโดยตั้งค่า delay ไว้ระหว่างการดำเนินการซึ่งรับรองว่าแอปพลิเคชันทำงาน
- Check and auto-deploy updates – เปิดใช้งานการตรวจสอบเป็นระยะสำหรับการเปลี่ยนแปลงโค้ดในที่เก็บของคุณ (ด้วยความถี่ที่กำหนดค่าได้) หากมี โปรเจกต์จะเริ่มต้นการ deploy โดยอัตโนมัติ
- Auto-resolve conflicts – ป้องกันไม่ให้เกิดการขัดแย้งในการรวมกัน โดยอัปเดตไฟล์ที่ขัดแย้งเป็นเวอร์ชันที่เก็บ (เช่น การเปลี่ยนแปลงที่ทำในเครื่องจะถูกยกเลิก)
- Enable zero-downtime deployment (สำหรับ PHP server เท่านั้น) – ปรับเปลี่ยน (หากเลือกตัวเลือกนี้) โฟลว์การ deploy เพื่อหลีกเลี่ยงการหยุดทำงานของแอปพลิเคชัน downtime
ภายในไม่กี่นาที แอปพลิเคชันของคุณจะใช้งานได้สำเร็จ ตอนนี้คุณสามารถเข้าถึงได้โดยคลิกที่ปุ่ม Open Browser วิเคราะห์ผ่าน Logs หรือจัดการด้วย file manager ผ่านการเข้าถึง SSH
Editing Git / SVN Projects
คุณสามารถปรับเปลี่ยนโปรเจกต์ VCS ที่ deploy แล้วได้โดยคลิกปุ่ม Edit เพื่อการปรับใช้ที่เหมาะสม
ภายในเฟรมที่เปิดอยู่คุณคุณสามารถแก้ไขพารามิเตอร์เดียวกันกับที่อธิบายไว้ข้างต้นสำหรับเฟรมการ deploy ตัวอย่างเช่นการเปลี่ยน branch, เพิ่ม hooks, เปิดใช้งานการอัปเดต auto-deploy และอื่นๆ
หมายเหตุ: หากมีการเปลี่ยนแปลงข้อมูลรับรองการเข้าถึงที่จัดเก็บของโปรเจกต์ คุณต้องระบุข้อมูลใหม่เพื่อทำงานกับโปรเจกต์นี้ต่อไป ขั้นแรกแก้ไขการพิสูจน์ตัวตนสำหรับที่จัดเก็บที่ Deployment Manager
จากนั้นคุณต้องแก้ไขโปรเจกต์ที่มีอยู่ทั้งหมดจากที่จัดเก็บโดยจะปรากฏเฟรมให้ยืนยันว่าคุณต้องการอัปเดตข้อมูลรับรองหรือไม่
คลิกปุ่ม Yes เพื่อใช้ข้อมูลใหม่สำหรับโปรเจกต์