โลโก้ GitLab
อันดับ 11 ใน Top 100 DevOps และ CI/CDMIT (Community Edition)

GitLab คืออะไร และวิธีติดตั้งบน Cloud Server

GitLab คือแพลตฟอร์มที่รวมที่เก็บซอร์สโค้ด การรีวิวโค้ด CI/CD และการจัดการโครงการไว้ในระบบเดียว องค์กรติดตั้งบนเซิร์ฟเวอร์ของตัวเองได้ ทำให้ซอร์สโค้ดไม่ต้องออกนอกประเทศ

หมวดหมู่
DevOps และ CI/CD
ติดตั้งบนเซิร์ฟเวอร์เองได้
ได้
สเปกเริ่มต้นที่แนะนำ
4 vCPU · RAM 8 GB
ไลเซนส์
MIT (Community Edition)
เว็บทางการ
เปิดเว็บไซต์
สร้าง Cloud Server เดี๋ยวนี้
  • ISO/IEC 27001
  • ISO 22301
  • ISO 20000-1
  • CSA-STAR

Data Center ในไทย มาตรฐาน TIA-942 Tier 3+ ข้อมูลอยู่ในประเทศไทย

GitLab คืออะไร

GitLab เริ่มจากการเป็นที่เก็บซอร์สโค้ดแบบ Git แล้วขยายจนครอบคลุมทั้งวงจรการพัฒนา ตั้งแต่การวางแผนงาน การรีวิวโค้ดผ่าน Merge Request การทดสอบอัตโนมัติ ไปจนถึงการนำขึ้นเซิร์ฟเวอร์จริง

สิ่งที่ทำให้องค์กรไทยเลือกติดตั้งเอง คือซอร์สโค้ดและข้อมูลลูกค้าที่อยู่ในระบบทดสอบไม่ต้องส่งออกไปยังบริการต่างประเทศ ซึ่งสำคัญกับงานภาครัฐ ธนาคาร และงานที่มีข้อกำหนดด้านข้อมูล

GitLab รุ่น Community Edition ใช้ฟรีและมีความสามารถหลักครบ ทั้ง Git, CI/CD, Container Registry และระบบ Issue จุดที่ต้องวางแผนคือมันกินทรัพยากรมาก ต้องเตรียม RAM อย่างน้อย 8 GB สำหรับการใช้งานจริง

แผนผังการวางระบบ GitLab บน Cloud Server หนึ่งเครื่องที่ Data Center ในประเทศไทย ผู้ใช้เข้าถึงผ่านไฟร์วอลล์ที่เปิดเฉพาะพอร์ต 80, 443, 22 ตัว GitLab และข้อมูลอยู่บนเครื่องเดียวกัน เริ่มต้นที่ 4 vCPU แรม 8 GB และมีสำเนาสำรองเขียนออกไปเก็บอีกไซต์หนึ่ง
GitLab ทำงานบน Cloud Server เครื่องเดียวได้ครบ เปิดเฉพาะพอร์ตที่จำเป็น ข้อมูลและสำเนาสำรองอยู่ใน Data Center ในประเทศไทย

ความสามารถเด่นของ GitLab

ที่เก็บซอร์สโค้ดพร้อมรีวิว

Merge Request พร้อมความเห็นแบบอินไลน์ การอนุมัติ และการป้องกัน Branch สำคัญ

CI/CD ในตัว

เขียน Pipeline ในไฟล์เดียวในโปรเจกต์ ทดสอบและ Deploy อัตโนมัติทุกครั้งที่มีการ Push

Container Registry ส่วนตัว

เก็บ Docker Image ขององค์กรไว้ในระบบเดียวกับซอร์สโค้ด

จัดการโครงการและ Issue

บอร์ดงาน Milestone และการเชื่อม Issue กับ Commit ในที่เดียว

ระบบสิทธิ์ระดับองค์กร

กำหนดสิทธิ์ต่อกลุ่ม โครงการ และ Branch พร้อมเชื่อมกับ LDAP หรือ SSO ได้

ใช้ GitLab ทำอะไรได้บ้าง

  • องค์กรที่ต้องเก็บซอร์สโค้ดไว้ในประเทศตามข้อกำหนดด้านความปลอดภัย
  • ทีมพัฒนาที่ต้องการ CI/CD โดยไม่จ่ายค่าบริการตามนาทีที่ใช้
  • บริษัทซอฟต์แวร์ที่ดูแลหลายโครงการและหลายลูกค้า
  • หน่วยงานที่ต้องตรวจสอบย้อนหลังว่าใครแก้โค้ดส่วนใดเมื่อไหร่

สเปก Cloud Server ที่แนะนำ

แผนภาพเทียบสเปก Cloud Server สำหรับ GitLab 3 ระดับ เริ่มจาก 4 vCPU แรม 8 GB ดิสก์ NVMe 100 GB ไปจนถึง 16 vCPU ขึ้นไป แรม 32 GB ขึ้นไป ดิสก์ NVMe 500 GB ขึ้นไป โดยเทียบขนาดแยกตามแต่ละคอลัมน์
เริ่มจากระดับที่ตรงกับการใช้งานตอนนี้ แล้วเพิ่ม CPU และ RAM ทีหลังได้บนเครื่องเดิม
ระดับการใช้งานvCPURAMDisk
ขั้นต่ำทีมไม่เกิน 20 คน ใช้ CI ไม่หนัก4 vCPU8 GBNVMe 100 GB
แนะนำทีม 20 ถึง 100 คน พร้อม Runner แยกเครื่อง8 vCPU16 GBNVMe 250 GB
องค์กรใหญ่หลายทีม มี Registry และ Pipeline จำนวนมาก16 vCPU ขึ้นไป32 GB ขึ้นไปNVMe 500 GB ขึ้นไป

ดูราคาตามสเปกได้ที่ ราคา Cloud Compute หรือให้ทีมงานช่วยประเมินสเปกจากปริมาณผู้ใช้จริงของคุณ

วิธีติดตั้ง GitLab บน Cloud Server ของ THAI DATA CLOUD

ขั้นตอนด้านล่างใช้กับ Cloud Server ที่เพิ่งสร้างใหม่จากหน้าจัดการของ THAI DATA CLOUD ได้ทันที ถ้าไม่สะดวกทำเอง ทีมวิศวกรของเราติดตั้งและตั้งค่าให้ฟรีสำหรับลูกค้า Cloud Server

สิ่งที่ต้องเตรียม

  • Ubuntu Server 24.04 LTS หรือ Rocky Linux 9
  • RAM อย่างน้อย 8 GB (4 GB ทำได้แต่จะช้าจนไม่เหมาะกับงานจริง)
  • โดเมนสำหรับ GitLab และใบรับรอง SSL
  • เครื่องแยกสำหรับ GitLab Runner ถ้ามี Pipeline หนัก

ทดสอบบน Ubuntu Server 24.04 LTS

  1. 1

    ติดตั้งแพ็กเกจที่จำเป็น

    sudo apt update
    sudo apt -y install curl openssh-server ca-certificates tzdata perl postfix
  2. 2

    เพิ่มที่เก็บแพ็กเกจของ GitLab

    curl -fsSL https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
  3. 3

    ติดตั้ง GitLab CE

    ระบุ EXTERNAL_URL เป็นโดเมนจริง GitLab จะขอใบรับรอง Let's Encrypt ให้อัตโนมัติเมื่อใช้ https

    sudo EXTERNAL_URL="https://gitlab.example.com" apt -y install gitlab-ce
  4. 4

    ดูรหัสผ่านผู้ดูแลระบบครั้งแรก

    ไฟล์นี้จะถูกลบอัตโนมัติหลัง 24 ชั่วโมง ให้เข้าไปเปลี่ยนรหัสผ่านทันที

    sudo cat /etc/gitlab/initial_root_password
  5. 5

    ติดตั้ง GitLab Runner สำหรับ CI/CD

    แนะนำให้ติดตั้งบน Cloud Server อีกเครื่อง เพื่อไม่ให้งานบิลด์แย่งทรัพยากรกับตัว GitLab

    curl -L "https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.deb.sh" | sudo bash
    sudo apt -y install gitlab-runner
    sudo gitlab-runner register
  6. 6

    ตั้งการสำรองข้อมูล

    ต้องสำรองทั้งข้อมูลและไฟล์ตั้งค่าใน /etc/gitlab ซึ่งเก็บกุญแจเข้ารหัส ถ้าไม่มีไฟล์นี้จะกู้ข้อมูลบางส่วนไม่ได้

    sudo gitlab-backup create
    sudo tar czf /var/backups/gitlab-config-$(date +%F).tar.gz /etc/gitlab

GitLab อัปเดตบ่อยและมีลำดับเวอร์ชันที่ต้องไล่ตาม อย่าข้ามหลายเวอร์ชันรวดเดียว ให้ตรวจเส้นทางการอัปเกรดจากเอกสารทางการก่อนเสมอ

พอร์ตที่ต้องเปิดบน Firewall

พอร์ตโปรโตคอลใช้ทำอะไร
80TCPHTTP และการต่ออายุใบรับรอง
443TCPHTTPS สำหรับหน้าเว็บและ Git over HTTPS
22TCPGit over SSH

สิ่งที่ควรทำต่อหลังติดตั้งเสร็จ

  • ปิดการสมัครสมาชิกเองและเปิดใช้เฉพาะบัญชีที่ผู้ดูแลสร้างหรือผ่าน SSO ขององค์กร
  • บังคับการยืนยันตัวตนสองชั้นสำหรับทุกบัญชี
  • ป้องกัน Branch หลักและกำหนดให้ต้องผ่านการอนุมัติก่อน Merge
  • ตั้งค่าให้ Runner ไม่รันด้วยสิทธิ์ที่เกินจำเป็น และแยกเครื่องออกจาก GitLab
  • สำรองข้อมูลทุกวันพร้อมไฟล์ /etc/gitlab และทดสอบกู้คืนจริงเป็นระยะ

ทำไมควรรัน GitLab บน Cloud Server ของ THAI DATA CLOUD

Data Center ในประเทศไทย มาตรฐาน ISO/IEC 27001 และ ISO 22301 พร้อมทีมวิศวกรคนไทยดูแลตลอด 24 ชั่วโมง

ซอร์สโค้ดและข้อมูลทดสอบอยู่ใน Data Center ในไทย ตอบข้อกำหนดขององค์กรที่ห้ามส่งข้อมูลออกนอกประเทศ

รัน Runner บน Cloud Server ของตัวเอง จ่ายค่าเครื่องคงที่แทนการจ่ายตามนาทีของบริการ CI ต่างประเทศ

ขยาย RAM ได้ทันทีเมื่อจำนวนผู้ใช้และ Pipeline เพิ่มขึ้น

คำถามที่พบบ่อยเกี่ยวกับ GitLab

GitLab CE ใช้ฟรีจริงไหม

จริง รุ่น Community Edition ใช้งานได้ไม่จำกัดผู้ใช้และไม่มีค่าไลเซนส์ ความสามารถที่ต้องจ่ายเพิ่มเป็นส่วนของงานองค์กรขนาดใหญ่ เช่น การอนุมัติหลายชั้นและรายงานด้านความปลอดภัยขั้นสูง

GitLab ต้องใช้สเปกเท่าไหร่

ขั้นต่ำที่ใช้งานจริงได้คือ 4 vCPU และ RAM 8 GB ถ้ามีทีมหลายสิบคนหรือ Pipeline ทำงานพร้อมกันบ่อย ควรใช้ 8 vCPU และ RAM 16 GB พร้อมแยกเครื่อง Runner ออกไป

ต่าง Gitea อย่างไร ควรเลือกตัวไหน

Gitea เบามาก รันบนเครื่อง 1 vCPU ได้และเหมาะกับทีมเล็กที่ต้องการแค่ที่เก็บโค้ด ส่วน GitLab ให้ CI/CD, Registry และระบบจัดการโครงการครบในตัว เหมาะกับองค์กรที่ต้องการแพลตฟอร์มเดียวจบ

ให้เราติดตั้ง GitLab ให้ฟรี บน Cloud Server ในไทย

แจ้งความต้องการสั้น ๆ ทีมวิศวกรจะช่วยประเมินสเปก ติดตั้ง และตั้งค่าความปลอดภัยให้พร้อมใช้งาน ปรึกษาฟรี ไม่มีข้อผูกมัด