Gitea คืออะไร และวิธีติดตั้งบน Cloud Server
Gitea คือ Git Server โอเพนซอร์สที่เขียนด้วยภาษา Go แจกเป็นไฟล์เดียว ใช้ทรัพยากรน้อยมากจนรันบน Cloud Server ขนาดเล็กที่สุดได้ เหมาะกับทีมที่ต้องการเก็บโค้ดไว้เองโดยไม่ต้องลงทุนเครื่องใหญ่
- หมวดหมู่
- DevOps และ CI/CD
- ติดตั้งบนเซิร์ฟเวอร์เองได้
- ได้
- สเปกเริ่มต้นที่แนะนำ
- 1 vCPU · RAM 1 GB
- ไลเซนส์
- MIT (โอเพนซอร์ส)
- เว็บทางการ
- เปิดเว็บไซต์
- ISO/IEC 27001
- ISO 22301
- ISO 20000-1
- CSA-STAR
Data Center ในไทย มาตรฐาน TIA-942 Tier 3+ ข้อมูลอยู่ในประเทศไทย
Gitea คืออะไร
Gitea ให้สิ่งที่ทีมพัฒนาส่วนใหญ่ต้องการจริงในงานประจำวัน คือที่เก็บโค้ด Pull Request การรีวิว ระบบ Issue และ Wiki โดยไม่มีส่วนเกินที่ทำให้ระบบหนัก
เพราะเป็นไฟล์ปฏิบัติการเดียวที่เขียนด้วย Go การติดตั้งจึงเป็นแค่การดาวน์โหลดไฟล์และตั้งเป็นบริการ ใช้ RAM หลักร้อยเมกะไบต์เท่านั้นสำหรับทีมขนาดเล็ก
รุ่นใหม่มี Gitea Actions ที่ใช้ไวยากรณ์คล้ายกับ GitHub Actions ทำให้ทำงานอัตโนมัติได้โดยไม่ต้องติดตั้ง CI แยก เหมาะกับทีมที่อยากได้ทั้งที่เก็บโค้ดและงานอัตโนมัติแบบเบา
ความสามารถเด่นของ Gitea
เบามาก
รันบนเครื่อง 1 vCPU และ RAM 1 GB ได้สบายสำหรับทีมเล็ก
ครบพอสำหรับงานประจำวัน
Pull Request, การรีวิว, Issue, Wiki และ Release ในระบบเดียว
Gitea Actions
ทำงานอัตโนมัติด้วยไวยากรณ์คล้าย GitHub Actions โดยไม่ต้องติดตั้งเซิร์ฟเวอร์ CI แยก
ย้ายจากที่อื่นได้ง่าย
นำเข้าที่เก็บโค้ดจาก GitHub หรือ GitLab พร้อม Issue ได้จากหน้าเว็บ
ใช้ Gitea ทำอะไรได้บ้าง
- ทีมพัฒนาขนาดเล็กถึงกลางที่ต้องการเก็บโค้ดไว้ในองค์กร
- เอเจนซีที่ต้องแยกที่เก็บโค้ดของลูกค้าแต่ละราย
- ระบบสำรองภายในสำหรับที่เก็บโค้ดที่อยู่บนบริการภายนอก
- สถาบันการศึกษาที่ต้องการ Git Server ให้นักศึกษาใช้
สเปก Cloud Server ที่แนะนำ
| ระดับการใช้งาน | vCPU | RAM | Disk |
|---|---|---|---|
| เริ่มต้นทีมไม่เกิน 10 คน | 1 vCPU | 1 GB | NVMe 20 GB |
| แนะนำทีมหลายสิบคนพร้อมใช้ Gitea Actions | 2 vCPU | 4 GB | NVMe 80 GB |
| ทีมใหญ่ที่เก็บโค้ดจำนวนมากและงานอัตโนมัติต่อเนื่อง | 4 vCPU | 8 GB | NVMe 200 GB |
ดูราคาตามสเปกได้ที่ ราคา Cloud Compute หรือให้ทีมงานช่วยประเมินสเปกจากปริมาณผู้ใช้จริงของคุณ
วิธีติดตั้ง Gitea บน Cloud Server ของ THAI DATA CLOUD
ขั้นตอนด้านล่างใช้กับ Cloud Server ที่เพิ่งสร้างใหม่จากหน้าจัดการของ THAI DATA CLOUD ได้ทันที ถ้าไม่สะดวกทำเอง ทีมวิศวกรของเราติดตั้งและตั้งค่าให้ฟรีสำหรับลูกค้า Cloud Server
สิ่งที่ต้องเตรียม
- Ubuntu Server 24.04 LTS หรือ Debian 12
- ฐานข้อมูล SQLite สำหรับทีมเล็ก หรือ PostgreSQL สำหรับทีมใหญ่
- Git ติดตั้งบนเครื่อง
ทดสอบบน Ubuntu Server 24.04 LTS ที่ติดตั้ง Docker แล้ว
- 1
สร้างไฟล์ compose.yml
services: gitea: image: gitea/gitea:latest restart: always environment: USER_UID: 1000 USER_GID: 1000 GITEA__database__DB_TYPE: postgres GITEA__database__HOST: db:5432 GITEA__database__NAME: gitea GITEA__database__USER: gitea GITEA__database__PASSWD: ChangeThisStrongPassword volumes: - ./gitea:/data ports: - "3000:3000" - "2222:22" depends_on: [db] db: image: postgres:16 restart: always environment: POSTGRES_USER: gitea POSTGRES_PASSWORD: ChangeThisStrongPassword POSTGRES_DB: gitea volumes: - ./postgres:/var/lib/postgresql/data - 2
สั่งรัน
docker compose up -d - 3
ตั้งค่าครั้งแรกผ่านเบราว์เซอร์
เปิดพอร์ต 3000 แล้วกรอกข้อมูลฐานข้อมูลกับ URL ของเว็บ จากนั้นสร้างบัญชีผู้ดูแลระบบเป็นบัญชีแรก
- 4
วาง Reverse Proxy และ SSL
server { listen 443 ssl; server_name git.example.com; location / { proxy_pass http://127.0.0.1:3000; proxy_set_header Host $host; proxy_set_header X-Forwarded-Proto $scheme; } } - 5
ปิดการสมัครสมาชิกเอง
แก้ไฟล์ตั้งค่า app.ini แล้วรีสตาร์ตบริการ เพื่อไม่ให้คนภายนอกสมัครเข้าใช้ระบบได้
[service] DISABLE_REGISTRATION = true
พอร์ตที่ต้องเปิดบน Firewall
| พอร์ต | โปรโตคอล | ใช้ทำอะไร |
|---|---|---|
| 443 | TCP | หน้าเว็บผ่าน Reverse Proxy |
| 3000 | TCP | พอร์ตภายในของ Gitea |
| 2222 | TCP | Git over SSH (แยกจากพอร์ต SSH ของเครื่อง) |
สิ่งที่ควรทำต่อหลังติดตั้งเสร็จ
- ปิดการสมัครสมาชิกเองและสร้างบัญชีให้เฉพาะคนในทีม
- เปิดการยืนยันตัวตนสองชั้น
- ใช้ PostgreSQL แทน SQLite เมื่อมีผู้ใช้หลายสิบคนขึ้นไป
- สำรองทั้งโฟลเดอร์ข้อมูลและฐานข้อมูลตามรอบ
- จำกัดสิทธิ์ของ Runner ที่ใช้กับ Gitea Actions
ทำไมควรรัน Gitea บน Cloud Server ของ THAI DATA CLOUD
Data Center ในประเทศไทย มาตรฐาน ISO/IEC 27001 และ ISO 22301 พร้อมทีมวิศวกรคนไทยดูแลตลอด 24 ชั่วโมง
รันได้บน Cloud Server สเปกต่ำสุด จึงเป็นวิธีที่ถูกที่สุดในการเก็บซอร์สโค้ดไว้ในไทย
ใช้เป็นสำเนาสำรองของที่เก็บโค้ดบนบริการต่างประเทศ เพื่อความต่อเนื่องเมื่อบริการนั้นล่ม
เพิ่มสเปกได้ทันทีถ้าทีมโตหรือเริ่มใช้งานอัตโนมัติมากขึ้น
คำถามที่พบบ่อยเกี่ยวกับ Gitea
Gitea ต่างจาก GitLab อย่างไร
Gitea เบากว่ามากและติดตั้งง่ายกว่า เหมาะกับทีมที่ต้องการที่เก็บโค้ดกับการรีวิวเป็นหลัก ส่วน GitLab ให้ CI/CD, Registry และเครื่องมือจัดการโครงการครบกว่า แต่ต้องการ RAM อย่างน้อย 8 GB
ใช้ SQLite บนงานจริงได้ไหม
ได้สำหรับทีมเล็กไม่กี่คน แต่เมื่อผู้ใช้เพิ่มขึ้นควรย้ายไป PostgreSQL เพื่อรองรับการเขียนพร้อมกันและทำให้การสำรองข้อมูลเป็นมาตรฐานกว่า
ย้ายจาก GitHub มา Gitea ยากไหม
ไม่ยาก Gitea มีเครื่องมือนำเข้าที่ดึงทั้งโค้ด Issue และ Pull Request จาก GitHub ได้จากหน้าเว็บ เพียงใส่โทเคนเข้าถึงของบัญชีต้นทาง
ทางเลือกอื่นที่คล้ายกับ Gitea
แอปอื่นในหมวด DevOps และ CI/CD
บริการของ THAI DATA CLOUD ที่เกี่ยวข้อง
ให้เราติดตั้ง Gitea ให้ฟรี บน Cloud Server ในไทย
แจ้งความต้องการสั้น ๆ ทีมวิศวกรจะช่วยประเมินสเปก ติดตั้ง และตั้งค่าความปลอดภัยให้พร้อมใช้งาน ปรึกษาฟรี ไม่มีข้อผูกมัด