Deployment Guide

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
คลิก Deploy เพื่อเริ่มกระบวนการ

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
คลิก Deploy เพื่อเริ่มกระบวนการ

ภายในไม่กี่นาที แอปพลิเคชันของคุณจะใช้งานได้สำเร็จ ตอนนี้คุณสามารถเข้าถึงได้โดยคลิกที่ปุ่ม Open Browser วิเคราะห์ผ่าน Logs หรือจัดการด้วย file manager ผ่านการเข้าถึง SSH

Editing Git / SVN Projects

คุณสามารถปรับเปลี่ยนโปรเจกต์ VCS ที่ deploy แล้วได้โดยคลิกปุ่ม Edit เพื่อการปรับใช้ที่เหมาะสม

ภายในเฟรมที่เปิดอยู่คุณคุณสามารถแก้ไขพารามิเตอร์เดียวกันกับที่อธิบายไว้ข้างต้นสำหรับเฟรมการ deploy ตัวอย่างเช่นการเปลี่ยน branch, เพิ่ม hooks, เปิดใช้งานการอัปเดต auto-deploy และอื่นๆ

หมายเหตุ: หากมีการเปลี่ยนแปลงข้อมูลรับรองการเข้าถึงที่จัดเก็บของโปรเจกต์ คุณต้องระบุข้อมูลใหม่เพื่อทำงานกับโปรเจกต์นี้ต่อไป ขั้นแรกแก้ไขการพิสูจน์ตัวตนสำหรับที่จัดเก็บที่ Deployment Manager





จากนั้นคุณต้องแก้ไขโปรเจกต์ที่มีอยู่ทั้งหมดจากที่จัดเก็บโดยจะปรากฏเฟรมให้ยืนยันว่าคุณต้องการอัปเดตข้อมูลรับรองหรือไม่





คลิกปุ่ม Yes เพื่อใช้ข้อมูลใหม่สำหรับโปรเจกต์