Gitea เป็น lightweight Git service ที่เหมาะสำหรับติดตั้งบน VPS เล็กๆ หรือ low-resource servers ขนาดไฟล์เล็ก (~15MB) ใช้หน่วยความจำน้อย และติดตั้งง่าย เหมาะสำหรับทีมเล็กๆ ที่ต้องการ self-hosted Git repository บทความนี้แนะนำวิธีติดตั้ง Gitea บน VPS
Gitea คืออะไร?
- Lightweight Git service ขนาดเล็ก
- ใช้หน่วยความจำน้อย (ใช้ได้กับ VPS 512MB)
- Single binary – ติดตั้งง่าย
- Web UI สำหรับจัดการ repositories
- SSH support สำหรับ Git operations
- Open source
ข้อกำหนดเบื้องต้น
- Ubuntu 18.04 LTS ขึ้นไป
- CPU: 1 core ก็พอ
- RAM: 512MB ขั้นต่ำ (1GB แนะนำ)
- Git installed
- SSH server
ขั้นตอนการติดตั้ง Gitea
# Create git user
sudo useradd -m -d /home/git git
# Download Gitea binary
cd /tmp
wget https://dl.gitea.io/gitea/latest/gitea-linux-amd64
# Move to /usr/local/bin
sudo mv gitea-linux-amd64 /usr/local/bin/gitea
sudo chmod +x /usr/local/bin/gitea
# Verify installation
gitea --version
ตั้งค่า Gitea Service
# Create systemd service file
sudo nano /etc/systemd/system/gitea.service
# Add content:
[Unit]
Description=Gitea (Git with a cup of tea)
After=network.target mysql.service
Wants=mysql.service
[Service]
User=git
WorkingDirectory=/home/git/gitea
ExecStart=/usr/local/bin/gitea web
Restart=always
RestartSec=10s
[Install]
WantedBy=multi-user.target
# Enable and start service
sudo systemctl enable gitea
sudo systemctl start gitea
# Check status
sudo systemctl status gitea
เข้าถึง Gitea ผ่าน Web Browser
Gitea ทำงานบนพอร์ต 3000 ตามค่าเริ่มต้น เข้าไปที่ http://your-vps-ip:3000 หรือ http://your-domain:3000
# First access จะให้ setup page
# ตั้งค่า:
# - Database type (SQLite is simple for small setup)
# - Admin account
# - Site title
# Click Install Gitea
ตั้งค่า Nginx Reverse Proxy
sudo nano /etc/nginx/sites-available/gitea
server {
listen 80;
server_name gitea.yourdomain.com;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
# Enable site
sudo ln -s /etc/nginx/sites-available/gitea /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
สร้าง Repository ใน Gitea
# Login ด้วย admin account
# Click + icon เลือก New Repository
# ใส่ repository name
# Click Create Repository
# Clone from local
git clone https://gitea.yourdomain.com/username/repo.git
# หรือผ่าน SSH
git clone [email protected]:username/repo.git
Best Practices สำหรับ Gitea
- ใช้ HTTPS (setup Let’s Encrypt)
- Backup repositories regularly
- Monitor disk space
- Update Gitea เป็นรุ่นล่าสุด
- ตั้งค่า SSH keys สำหรับ secure access
- ตั้งค่า strong passwords
สรุป
Gitea เป็นทางเลือกที่ดีสำหรับผู้ที่ต้องการ self-hosted Git service ที่เบา รวดเร็ว และง่ายต่อการติดตั้ง ข้อมูลทั้งหมดของคุณจะอยู่บน VPS ของตัวเองอย่างเต็มที่ เหมาะสำหรับโปรเจกต์ส่วนตัว ทีมเล็กๆ หรือ organization ที่ต้องการใช้เบาๆ
