ศูนย์คู่มือ Ruk-Com PaaS

คู่มือการพัฒนา Deploy และดูแล Application บน Platform

RUK-COM PAAS / DEVELOPMENT TOOLS

บทช่วยสอน CLI: Redeploy Container

คู่มือนี้เรียบเรียงสำหรับ Ruk-Com PaaS หน้าจอและตัวเลือกอาจแตกต่างตามเวอร์ชันและสิทธิ์ของบัญชี

ตรวจสอบ Environment, Region, สิทธิ์บัญชี และสำรองค่าปัจจุบันก่อนดำเนินการกับระบบจริง

วัตถุประสงค์

บทความนี้อธิบายการใช้งาน บทช่วยสอน CLI: Redeploy Container บน Ruk-Com Cloud PaaS โดยจัดลำดับขั้นตอนและจุดตรวจสอบสำหรับการนำไปใช้งานจริง

ก่อนเริ่มดำเนินการ

  • เข้าสู่ระบบด้วยบัญชีที่มีสิทธิ์จัดการ Environment ที่เกี่ยวข้อง
  • ตรวจสอบชื่อ Environment, Region และ Resource เป้าหมายก่อนบันทึกการเปลี่ยนแปลง
  • สำรองข้อมูลหรือกำหนดแผนย้อนกลับก่อนแก้ไขระบบ Production

ในคู่มือนี้เราจะแสดงวิธีการDeploy ใหม่Container ใหม่จากแท็ก image หนึ่งไปยังอีกแท็กหนึ่ง หากจำเป็นตัวเลือกนี้จะรองรับการ Deploy Layer ทั้งหมด

1. ขั้นตอนแรกค้นหาชื่อ envionment และ node ID/layer ของ Container ที่ควร redeploy ใหม่คุณสามารถดูข้อมูลที่จำเป็นผ่าน Dashboard หรือใช้เมธอดรับ Envsและรับ EnvInfoเพื่อรับข้อมูลโดยตรงจากเทอร์มินัล (สำหรับ environment ทั้งหมดหรือตามลำดับ)

คุณจะได้รับข้อมูลของ environment -ชื่อ Layer, รหัส Node, Docker Image, แท็ก, ฯลฯ

2. เมื่อคุณมี ID ของ Container และ Layer (ชื่อ nodeGroup) คุณสามารถดูรายการแท็กที่มีให้สำหรับ image โดยใช้เมธอดรับ ContainerNode แท็กพร้อมกับ Parameter ชื่อ environment และ node ID:

~/jelastic/environment/control/getcontainernodetags --envName {envName} --nodeId {nodeId}

ในกรณีของเราจะแสดงรายการแท็กสำหรับ redis

3. ตอนนี้คุณจะมีข้อมูลทั้งหมดที่จำเป็นสำหรับการ redeploy Container ใหม่ผ่าน CLI แล้วเรียกใช้เมธอดRedeploy Container

~/jelastic/environment/control/redeploycontainers --envName {envName} [--nodeGroup {nodeGroup}] [--nodeId {nodeId}] --tag {tag} [--useExistingVolumes {useExistingVolumes}] [--login {login}] [--password {password}]

โดยใช้ Parameter ต่อไปนี้:

  • {ชื่อ env}- ชื่อ environment ที่จะ DeployContainer ใหม่
  • {กลุ่ม Node}- ระบุ Layer ของ environment ที่จะอัปเดต(ไม่บังคับ)
  • {รหัส Node}- ระบุจำนวน Container สำหรับการ Deploy ใหม่โดยเฉพาะ(ไม่บังคับ)

หมายเหตุ:คุณต้องระบุ Parameter{กลุ่ม Node}หรือ{รหัส Node}เพื่อกำหนดเป้าหมายในการดำเนินการ โดยเมธอดจะละเว้น{กลุ่ม Node}หากมีการระบุทั้งคู่และจะล้มเหลวหากไม่มีการระบุ

  • {แท็ก}- เวอร์ชันของ image ที่จะ Deploy
  • {ใช้ปริมาณที่มีอยู่}- ตั้งค่าเป็น true เพื่อเก็บข้อมูลไว้ใน volumes ที่ mount ไว้ภายใน Container ที่อัปเดต(ไม่บังคับ)

กระบวนการนี้อาจใช้เวลาหลายนาทีและจะตอบสนองด้วย result: "0" (การดำเนินการสำเร็จ) รวมถึงเวอร์ชันก่อนและหลัง Deploy ใหม่ ตลอดจนระยะเวลาของการอัปเดต Container แต่ละรายการ