บทช่วยสอน 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 แต่ละรายการ
