git轻量级gitea介绍
Gitea 是一个轻量级、自托管的 Git 服务平台,类似于 GitHub / GitLab,但更加简洁、资源占用更低,适合私有化部署和中小规模团队。
其核心定位可以理解为:
“自建 GitHub + DevOps 基础能力(轻量版)”

1. 核心特性
1.1 基础 Git 能力
- 仓库管理(public/private)
- 分支 / Tag 管理
- Pull Request / Merge Request
- Code Review
- Issue / Milestone / Label
👉 本质:一个完整的 Git 协作平台
1.2 用户与权限体系
- 用户 / 组织 / 团队
- RBAC 权限控制
- SSH Key / Token 管理
- Webhook 支持(CI/CD 集成)
1.3 内置 DevOps 能力
较新版本已集成:
- Gitea Actions(类 GitHub Actions)
- CI/CD Pipeline
- Runner 支持(自建执行器)
👉 可替代:
- Jenkins(部分场景)
- GitHub Actions(私有化)
2.轻量级优势(关键差异点)
| 维度 | Gitea | GitLab |
|---|---|---|
| 资源占用 | 极低(< 512MB 可跑) | 较高(建议 4GB+) |
| 部署复杂度 | 简单 | 复杂 |
| 数据库 | SQLite / MySQL / PostgreSQL | PostgreSQL |
| 启动速度 | 秒级 | 分钟级 |
👉 SRE视角:非常适合边缘节点 / 小型集群 / 内网环境
3. 架构设计(核心)
3.1 逻辑架构
flowchart TD
User[用户 / 开发者]
Web[Web UI / API]
Gitea[Gitea Server]
Git[Git Repo Storage]
DB[(Database)]
Runner[CI Runner]
Artifact[Artifact/Logs]
User --> Web
Web --> Gitea
Gitea --> Git
Gitea --> DB
Gitea --> Runner
Runner --> Artifact
3.2 核心组件说明
| 组件 | 作用 |
|---|---|
| Gitea Server | 核心服务(Go 单二进制) |
| Git Backend | 实际仓库存储 |
| Database | 元数据(用户、权限、issue) |
| Runner | CI/CD 执行器 |
| Webhook | 外部系统触发 |
4. 部署模式
4.1 单机部署(最常见)
1 | docker run -d \ |
特点:
- 快速上线
- 适合 PoC / 小团队
4.2 docker-compose(推荐)
1 | version: "3" |
4.3 高可用架构(生产)
flowchart LR
LB[负载均衡]
G1[Gitea Node1]
G2[Gitea Node2]
DB[(MySQL/PostgreSQL)]
NFS[(共享存储)]
LB --> G1
LB --> G2
G1 --> DB
G2 --> DB
G1 --> NFS
G2 --> NFS
关键点:
- DB 外置(MySQL / PostgreSQL)
- Repo 存储共享(NFS / Ceph)
- 多实例无状态化