1. 首页 > 软件下载 > 正文

Gitea下载-Gitea轻量级Git服务下载地址-Gitea轻量级Git服务下载方法

1. Gitea简介与版本说明

Gitea是一个轻量级的Git服务,使用Go语言编写,具有安装简单、资源占用少、功能完整等特点。它是Gogs的社区分支,适合中小团队使用。更多学习教程www.fgedu.net.cn

Gitea最新版本:

Gitea 1.22.6(最新稳定版)- 发布于2025年,提供增强的安全性和新特性

Gitea 1.22.3 – 长期支持版本,适合生产环境

Gitea 1.22.0 – 旧版稳定版本,维护支持中

Gitea 1.21.11 – 传统稳定版本

Gitea主要特性:

轻量级:单个二进制文件,资源占用少

跨平台:支持Linux、Windows、macOS

功能完整:Issue管理、Pull Request、Wiki、代码审查

多种数据库:支持SQLite、MySQL、PostgreSQL

集成CI/CD:支持Gitea Actions

2. Gitea下载方式

Gitea提供二进制文件、Docker镜像和包管理器三种下载方式。学习交流加群风哥微信: itpux-com

方式一:下载二进制文件(推荐)

# 下载Gitea Linux AMD64版本
# cd /fgedudb/gitea
# wget https://dl.gitea.com/gitea/1.22.6/gitea-1.22.6-linux-amd64

# 下载输出案例如下:
–2026-04-04 19:00:15– https://dl.gitea.com/gitea/1.22.6/gitea-1.22.6-linux-amd64
Resolving dl.gitea.com… 52.84.125.19
Connecting to dl.gitea.com|52.84.125.19|:443… connected.
HTTP request sent, awaiting response… 200 OK
Length: 123456789 (118M) [application/octet-stream]
Saving to: ‘gitea-1.22.6-linux-amd64’

gitea-1.22.6-linux-amd64 100%[===============================================>] 117.78M 15.6MB/s in 8s

2026-04-04 19:00:23 URL:https://dl.gitea.com/gitea/1.22.6/gitea-1.22.6-linux-amd64 [123456789/123456789] -> “gitea-1.22.6-linux-amd64” [1]

# 验证下载文件
# ls -lh gitea-1.22.6-linux-amd64
-rw-r–r– 1 root root 118M Apr 4 19:00 gitea-1.22.6-linux-amd64

# 验证SHA256校验和
# sha256sum gitea-1.22.6-linux-amd64
a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0u1v2w3x4y5z6a7b8c9d0e1f2 gitea-1.22.6-linux-amd64

# 下载校验和文件验证
# wget https://dl.gitea.com/gitea/1.22.6/gitea-1.22.6-linux-amd64.sha256
# sha256sum -c gitea-1.22.6-linux-amd64.sha256
gitea-1.22.6-linux-amd64: OK

# 添加执行权限
# chmod +x gitea-1.22.6-linux-amd64

# 移动到系统目录
# mv gitea-1.22.6-linux-amd64 /usr/local/bin/gitea

# 验证版本
# gitea –version
Gitea version 1.22.6 built with GNU Make 4.4.1, go1.23.4 : bindata, timetzdata, sqlite, sqlite_unlock_notify

方式二:Docker镜像下载

# 拉取Gitea官方Docker镜像
# docker pull gitea/gitea:latest

# 下载输出案例如下:
latest: Pulling from gitea/gitea
Digest: sha256:a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0u1v2w3x4y5z6a7b8c9d0e1f2
Status: Downloaded newer image for gitea/gitea:latest
docker.io/gitea/gitea:latest

# 拉取指定版本
# docker pull gitea/gitea:1.22.6
# docker pull gitea/gitea:1-rootless

# 查看镜像
# docker images gitea/gitea
REPOSITORY TAG IMAGE ID CREATED SIZE
gitea/gitea latest a1b2c3d4e5f6 2 days ago 156MB
gitea/gitea 1.22.6 a1b2c3d4e5f6 2 days ago 156MB
gitea/gitea 1-rootless b2c3d4e5f6g7 1 week ago 145MB

# 创建数据目录
# mkdir -p /var/lib/gitea/{data,log,custom}

# 运行Gitea容器
# docker run -d –name=gitea \
-p 10022:22 -p 3000:3000 \
-v /var/lib/gitea:/data \
-v /etc/timezone:/etc/timezone:ro \
-v /etc/localtime:/etc/localtime:ro \
–restart always \
gitea/gitea:latest

# 查看容器状态
# docker ps | grep gitea
a1b2c3d4e5f6 gitea/gitea:latest “/usr/bin/entrypoint” 2 minutes ago Up 2 minutes 0.0.0.0:3000->3000/tcp, 0.0.0.0:10022->22/tcp gitea

方式三:包管理器安装

# RHEL/CentOS/Rocky Linux
# yum install -y gitea

# Ubuntu/Debian
# apt install -y gitea

# Arch Linux
# pacman -S gitea

# 查看安装版本
# gitea –version
Gitea version 1.22.6 built with GNU Make 4.4.1, go1.23.4

3. 系统环境准备

Gitea依赖Git和数据库,需要提前安装配置。学习交流加群风哥QQ113257174

步骤1:安装Git

# 安装Git
# yum install -y git

# 验证Git版本
# git –version
git version 2.43.0

# 创建Git用户
# useradd -r -s /bin/bash -d /home/git -m git

# 创建Gitea目录
# mkdir -p /var/lib/gitea/{custom,data,log}
# chown -R git:git /var/lib/gitea
# chmod -R 750 /var/lib/gitea

# 创建配置目录
# mkdir -p /etc/gitea
# chown root:git /etc/gitea
# chmod 770 /etc/gitea

步骤2:安装数据库

# 安装MariaDB(推荐)
# yum install -y mariadb-server mariadb

# 启动MariaDB服务
# systemctl start mariadb
# systemctl enable mariadb

# 安全配置
# mysql_secure_installation

# 创建Gitea数据库
# mysql -u root -p
MariaDB [(none)]> CREATE DATABASE gitea CHARACTER SET ‘utf8mb4’ COLLATE ‘utf8mb4_unicode_ci’;
Query OK, 1 row affected (0.001 sec)

MariaDB [(none)]> CREATE USER ‘gitea’@’localhost’ IDENTIFIED BY ‘gitea_password_2026’;
Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON gitea.* TO ‘gitea’@’localhost’;
Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]> exit
Bye

# 或使用SQLite(轻量级部署)
# yum install -y sqlite

4. Gitea安装实战

完成环境准备后,配置并启动Gitea服务。更多学习教程公众号风哥教程itpux_com

步骤1:创建systemd服务

# 创建systemd服务文件
# vi /etc/systemd/system/gitea.service
[Unit]
Description=Gitea (Git with a cup of tea)
After=syslog.target
After=network.target
After=mariadb.service

[Service]
RestartSec=2s
Type=simple
User=git
Group=git
WorkingDirectory=/var/lib/gitea/
ExecStart=/usr/local/bin/gitea web -c /etc/gitea/app.ini
Restart=always
Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/var/lib/gitea

[Install]
WantedBy=multi-user.target

# 重载systemd
# systemctl daemon-reload

# 启动Gitea服务
# systemctl start gitea
# systemctl enable gitea

# 查看服务状态
# systemctl status gitea
● gitea.service – Gitea (Git with a cup of tea)
Loaded: loaded (/etc/systemd/system/gitea.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2026-04-04 19:10:00 CST; 30s ago
Main PID: 55123 (gitea)
Tasks: 8
Memory: 156M
CGroup: /system.slice/gitea.service
└─55123 /usr/local/bin/gitea web -c /etc/gitea/app.ini

Apr 04 19:10:00 fgedu.net.cn systemd[1]: Started Gitea (Git with a cup of tea).
Apr 04 19:10:00 fgedu.net.cn gitea[55123]: 2026/04/04 19:10:00 cmd/web.go:111:runWeb() [I] Starting Gitea on PID: 55123
Apr 04 19:10:00 fgedu.net.cn gitea[55123]: 2026/04/04 19:10:00 cmd/web.go:172:runWeb() [I] Global init

步骤2:Web界面安装配置

# 访问Web界面
# http://192.168.1.51:3000

# 首次访问会显示安装页面,配置以下信息:

数据库设置:
– 数据库类型:MySQL
– 主机:127.0.0.1:3306
– 用户名:gitea
– 密码:gitea_password_2026
– 数据库名称:gitea

应用基本设置:
– 站点标题: Git
– 仓库根目录:/var/lib/gitea/data/repositories
– LFS根目录:/var/lib/gitea/data/lfs
– 以用户名运行:git
– 服务器域名:gitea.fgedu.net.cn
– SSH服务端口:22
– HTTP端口:3000
– 基础URL:http://gitea.fgedu.net.cn:3000/

管理员账号设置:
– 管理员用户名:admin
– 密码:fgedu_gitea_password_2026
– 邮箱:admin@fgedu.net.cn

# 点击”立即安装”按钮

# 输出案例如下:
安装成功!正在跳转到首页…

步骤3:验证安装

# 查看配置文件
# cat /etc/gitea/app.ini

# 输出案例如下:
[server]
APP_DATA_PATH = /var/lib/gitea/data
DOMAIN = gitea.fgedu.net.cn
HTTP_PORT = 3000
ROOT_URL = http://gitea.fgedu.net.cn:3000/
DISABLE_SSH = false
SSH_PORT = 22
LFS_START_SERVER = true
LFS_CONTENT_PATH = /var/lib/gitea/data/lfs

[database]
DB_TYPE = mysql
HOST = 127.0.0.1:3306
NAME = gitea
USER = gitea
PASSWD = gitea_password_2026
SCHEMA =
SSL_MODE = disable

[repository]
ROOT = /var/lib/gitea/data/repositories

# 验证端口监听
# netstat -tlnp | grep gitea
tcp 0 0 0.0.0.0:3000 0.0.0.0:* LISTEN 55123/gitea

风哥提示:Gitea安装完成后,配置文件/etc/gitea/app.ini需要修改权限为只读,防止通过Web界面修改配置。

5. Gitea配置实战

完成安装后,进行基础配置和安全加固。from:www.itpux.com

步骤1:配置邮件服务

# 编辑配置文件
# vi /etc/gitea/app.ini

[mailer]
ENABLED = true
FROM = gitea@fgedu.net.cn
PROTOCOL = smtp+starttls
SMTP_ADDR = smtp.fgedu.net.cn
SMTP_PORT = 587
USER = gitea@fgedu.net.cn
PASSWD = smtp_password

# 重启Gitea
# systemctl restart gitea

# 测试邮件发送
# 导航到 站点管理 -> 配置管理 -> 邮件配置
# 点击 “发送测试邮件”

步骤2:配置LDAP认证

# 导航到 站点管理 -> 认证源 -> 添加认证源

认证类型:LDAP (via BindDN)
认证名称:-LDAP
主机:192.168.1.100
端口:389
绑定DN:cn=admin,dc=fgedu,dc=net,dc=cn
绑定密码:ldap_password
用户搜索基准:ou=users,dc=fgedu,dc=net,dc=cn
用户过滤规则:(&(objectClass=inetOrgPerson)(uid=%s))
用户名属性:uid
姓名属性:cn
邮箱属性:mail

# 点击 “添加认证源” 按钮

# 输出案例如下:
认证源添加成功!

步骤3:配置HTTPS

# 创建SSL证书目录
# mkdir -p /var/lib/gitea/custom/https

# 复制证书文件
# cp /etc/pki/tls/certs/gitea.crt /var/lib/gitea/custom/https/
# cp /etc/pki/tls/private/gitea.key /var/lib/gitea/custom/https/

# 编辑配置文件
# vi /etc/gitea/app.ini

[server]
PROTOCOL = https
CERT_FILE = /var/lib/gitea/custom/https/gitea.crt
KEY_FILE = /var/lib/gitea/custom/https/gitea.key
ROOT_URL = https://gitea.fgedu.net.cn:3000/

# 重启Gitea
# systemctl restart gitea

# 验证HTTPS访问
# curl -k https://gitea.fgedu.net.cn:3000

6. Gitea使用实战

Gitea提供完整的Git仓库管理功能。

步骤1:创建仓库和推送代码

# 创建仓库(Web界面)
# 导航到 + -> 新建仓库
# 仓库名称:fgedu-java-project
# 描述: Java项目
# 可见性:私有

# 配置Git客户端
# git config –global user.name “admin”
# git config –global user.email “admin@fgedu.net.cn”

# 克隆仓库
# git clone http://gitea.fgedu.net.cn:3000/admin/fgedu-java-project.git
Cloning into ‘fgedu-java-project’…
warning: You appear to have cloned an empty repository.

# 创建示例文件
# cd fgedu-java-project
# echo “# Java Project” > README.md
# mkdir -p src/main/java
# echo “public class App { public static void main(String[] args) { System.out.println(\”Hello World\”); } }” > src/main/java/App.java

# 提交并推送
# git add .
# git commit -m “Initial commit”
[master (root-commit) a1b2c3d] Initial commit
2 files changed, 2 insertions(+)
create mode 100644 README.md
create mode 100644 src/main/java/App.java

# git push -u origin master
Username for ‘http://gitea.fgedu.net.cn:3000’: admin
Password for ‘http://admin@gitea.fgedu.net.cn:3000’:
Enumerating objects: 4, done.
Counting objects: 100% (4/4), done.
Delta compression using up to 4 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (4/4), 312 bytes | 312.00 KiB/s, done.
Total 4 (delta 0), reused 0 (delta 0), pack-reused 0
remote: . Processing 1 references
To http://gitea.fgedu.net.cn:3000/admin/fgedu-java-project.git
* [new branch] master -> master
Branch ‘master’ set up to track remote branch ‘master’ from ‘origin’.

步骤2:配置Gitea Actions

# 编辑配置文件启用Actions
# vi /etc/gitea/app.ini

[actions]
ENABLED = true
DEFAULT_ACTIONS_URL = https://github.com

# 重启Gitea
# systemctl restart gitea

# 创建.gitea/workflows目录
# mkdir -p .gitea/workflows

# 创建CI配置文件
# vi .gitea/workflows/ci.yml
name: CI
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
– uses: actions/checkout@v4
– name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: ’17’
distribution: ‘temurin’
– name: Build with Maven
run: mvn clean package -DskipTests
– name: Run tests
run: mvn test

# 提交并推送
# git add .gitea/workflows/ci.yml
# git commit -m “Add CI workflow”
# git push

7. 生产环境最佳实践

在生产环境中部署Gitea需要考虑性能优化、备份恢复和安全加固。

性能优化配置

# 编辑配置文件
# vi /etc/gitea/app.ini

[server]
LANDING_PAGE = explore
LFS_START_SERVER = true

[repository]
ENABLE_PUSH_CREATE_USER = true
DEFAULT_BRANCH = main

[repository.upload]
ENABLED = true
FILE_MAX_SIZE = 50
MAX_FILES = 10

[ui]
THEME_COLOR_META_TAG = “#6cc644”

[ui.meta]
AUTHOR = Git
DESCRIPTION = Git Repository

[indexer]
ISSUE_INDEXER_TYPE = bleve
ISSUE_INDEXER_PATH = /var/lib/gitea/data/indexers/issues.bleve

[cache]
ENABLED = true
ADAPTER = redis
HOST = network=tcp,addr=127.0.0.1:6379,password=,db=0

[session]
PROVIDER = redis
PROVIDER_CONFIG = network=tcp,addr=127.0.0.1:6379,password=,db=1

# 重启Gitea
# systemctl restart gitea

备份与恢复

# 使用gitea dump命令备份
# gitea dump -c /etc/gitea/app.ini –work-path /var/lib/gitea

# 输出案例如下:
2026/04/04 19:30:00 …s/setting/setting.go:54:NewContext() [I] NewContext: 2026-04-04 19:30:00
2026/04/04 19:30:00 …s/setting/setting.go:54:NewContext() [I] NewContext: 2026-04-04 19:30:00
2026/04/04 19:30:00 cmd/dump.go:263:runDump() [I] Dumping database…
2026/04/04 19:30:00 cmd/dump.go:273:runDump() [I] Dumping repositories…
2026/04/04 19:30:15 cmd/dump.go:283:runDump() [I] Dumping LFS objects…
2026/04/04 19:30:20 cmd/dump.go:293:runDump() [I] Dumping custom files…
2026/04/04 19:30:20 cmd/dump.go:303:runDump() [I] Dumping log files…
2026/04/04 19:30:20 cmd/dump.go:313:runDump() [I] Dumping data files…
2026/04/04 19:30:25 cmd/dump.go:323:runDump() [I] Creating archive…
2026/04/04 19:30:45 cmd/dump.go:333:runDump() [I] Backup saved to gitea-dump-1712236200.zip

# 查看备份文件
# ls -lh gitea-dump-*.zip
-rw-r–r– 1 root root 1.2G Apr 4 19:30 gitea-dump-1712236200.zip

# 恢复备份
# unzip gitea-dump-1712236200.zip
# mv data/* /var/lib/gitea/data/
# mv custom/* /var/lib/gitea/custom/
# mv log/* /var/lib/gitea/log/
# chown -R git:git /var/lib/gitea

生产环境建议:Gitea建议部署在内存至少2GB的服务器上。建议使用MySQL或PostgreSQL作为数据库。定期备份仓库和数据库。建议配置HTTPS加密传输。建议配置LDAP认证集成企业用户体系。定期更新Gitea版本获取安全补丁。

本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html

联系我们

在线咨询:点击这里给我发消息

微信号:itpux-com

工作日:9:30-18:30,节假日休息