Search this site
Embedded Files
  • หลักสูตรอบรม
    • หลักสูตร e-Document 2
    • หลักสูตร K8s
    • หลักสูตร CI/CD
  • แผนการอบรมประจำปี
    • แผนการอบรมประจำปี
    • สถิติการเข้าอบรม
  • SamartSkills
  • NUSkill
  • ติดต่อเรา
 
  • หลักสูตรอบรม
    • หลักสูตร e-Document 2
    • หลักสูตร K8s
    • หลักสูตร CI/CD
  • แผนการอบรมประจำปี
    • แผนการอบรมประจำปี
    • สถิติการเข้าอบรม
  • SamartSkills
  • NUSkill
  • ติดต่อเรา
  • More
    • หลักสูตรอบรม
      • หลักสูตร e-Document 2
      • หลักสูตร K8s
      • หลักสูตร CI/CD
    • แผนการอบรมประจำปี
      • แผนการอบรมประจำปี
      • สถิติการเข้าอบรม
    • SamartSkills
    • NUSkill
    • ติดต่อเรา

⌂ หน้าแรก

วิทยากร : พิชญา แสนคำ

บุคลากรสังกัดงานระบบสารสนเทศ

กองบริการเทคโนโลยีสารสนเทศและการสื่อสาร

มหาวิทยาลัยนเรศวร

ตรวจสอบรายชื่อ

รายละเอียดหลักสูตร

  • ทฤษฎี : Continuous Integration/Continuous Deployment (CI/CD) คืออะไร

ปฏิบัติ 1 : สร้างโปรเจกต์ Node.js + Express API และนำโค้ดขึ้น GitLab

ปฏิบัติ 2 : เขียน Dockerfile เพื่อแพ็กแอปพลิเคชันของเรา

ปฏิบัติ 3 : ติดตั้ง Local Kubernetes Cluster (Minikube) และ kubectl

ปฏิบัติ 4 : เขียนไฟล์ deployment.yaml และ service.yaml แบบง่ายๆ สำหรับแอปพลิเคชัน

  • เป้าหมาย : เพื่อพิสูจน์ว่าชิ้นส่วนทั้งหมด (แอป, Docker, K8s Config) ทำงานร่วมกันได้ก่อนเริ่มทำระบบอัตโนมัติ

ปฏิบัติ 5 :

  1. Build Docker Image บนเครื่อง

  2. โหลด Image เข้าไปใน Docker ของ Minikube โดยตรง (เพื่อเลี่ยงการใช้ Registry)

  3. ใช้คำสั่ง kubectl apply เพื่อ Deploy แอปพลิเคชัน

  4. ทดสอบเข้าถึงแอปพลิเคชันที่รันบน Kubernetes ผ่าน Service

  • ทฤษฎี: ทำไม CI/CD บน Cloud (GitLab.com) ถึงคุยกับ K8s บนเครื่องเราโดยตรงไม่ได้?

ปฏิบัติ 6 (ขั้นตอนสำคัญ) : ติดตั้งและลงทะเบียน GitLab Runner บนเครื่องของเราเอง
(Self-hosted Runner) เพื่อให้มันสามารถรันคำสั่ง docker และ kubectl บนเครื่องเราได้

  • ทฤษฎี: ออกแบบ Pipeline 2 ขั้นตอน (build -> deploy) ในไฟล์ .gitlab-ci.yml

ปฏิบัติ 7 : สร้าง .gitlab-ci.yml

• Stage build: เขียน Job ให้ทำการ Build Docker Image และ Push ไปเก็บไว้ที่ GitLab Container Registry

• Stage deploy: เขียน Job ให้ดึงไฟล์ deployment.yaml มา, ใช้คำสั่งง่ายๆ (เช่น sed) เพื่อเปลี่ยนชื่อ Image Tag ให้เป็นเวอร์ชันล่าสุด, แล้วสั่ง kubectl apply

ปฏิบัติ 8 : ทดสอบ Pipeline ทั้งระบบ

• แก้ไขโค้ดใน server.js เล็กน้อย

• git push โค้ดที่แก้ไขขึ้น GitLab

• เฝ้าดู Pipeline ทำงานอัตโนมัติตั้งแต่ Build Image ใหม่, Push to Registry, และ Deploy ลง Kubernetes จนแอปพลิเคชันอัปเดตเป็นเวอร์ชันใหม่

ความรู้พื้นฐานของผู้เข้ารับการอบรม

 -


โปรแกรมที่ใช้ในการอบรม

 -


เอกสารประกอบการอบรม

 -


  * หลักสูตรสำหรับผู้ดูแลระบบเครือข่าย และ Programmer เท่านั้น   



Email : citcoms_training@nu.ac.thWebsite : citcoms.nu.ac.thFacebook : @citcomsnuTel : 055 96 1575
Report abuse
Report abuse