CentOs 使用 Gitea 搭建轻量级 Git 服务

1. 安装依赖:首先安装 Git 和 Gitea 运行所需的基础工具。

bash 复制代码
sudo yum install -y git

2.创建专用用户:为 Gitea 创建一个名为 git 的系统用户,增强安全性。

bash 复制代码
sudo adduser --system --shell /bin/bash --comment 'Git Version Control' --create-home --home /home/git git

3.创建目录结构:为 Gitea 的配置、数据和日志创建文件夹,并设置正确的权限。

bash 复制代码
sudo mkdir -p /var/lib/gitea/{custom,data,log}
sudo chown -R git:git /var/lib/gitea/
sudo chmod -R 750 /var/lib/gitea/
sudo mkdir /etc/gitea
sudo chown root:git /etc/gitea
sudo chmod 770 /etc/gitea
  1. 下载并安装 Gitea:从官方获取最新版的 Gitea 二进制文件。

访问 dl.gitea.com 查看最新版本号,替换下方 1.26.4。

下载二进制文件(请将 1.26.4 替换为实际版本号)

首先使用uname -m查看linux内核

如果是x86_64则使用amd64版本

bash 复制代码
wget -O /tmp/gitea https://dl.gitea.com/gitea/1.26.4/gitea-1.26.4-linux-amd64
sudo mv /tmp/gitea /usr/bin/gitea
sudo chmod +x /usr/bin/gitea

(我这台服务器的bin路径是/usr/bin)

5. 创建 Systemd 服务:让 Gitea 能够作为系统服务,开机自启。

bash 复制代码
sudo nano /etc/systemd/system/gitea.service

将下面的配置粘贴进去并保存 (Ctrl+O, Ctrl+X)。

bash 复制代码
[Unit]
Description=Gitea (Git with a cup of tea)
After=syslog.target
After=network.target

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

[Install]
WantedBy=multi-user.target

6. 启动服务并开放端口:

#重载 systemd 配置,启动并设置开机自启

bash 复制代码
sudo systemctl daemon-reload
sudo systemctl enable --now gitea

#配置防火墙,开放 Gitea 默认端口 3000

bash 复制代码
sudo firewall-cmd --permanent --add-port=3000/tcp
sudo firewall-cmd --reload

7. 最后启动服务

bash 复制代码
sudo systemctl start gitea
sudo systemctl status gitea

8. 通过 Web 界面完成安装:

打开浏览器访问 http://<你的服务器IP>:3000,你会看到初始化设置页面。

数据库设置:选择 SQLite3,路径保持默认即可。

常规设置:设置站点标题、仓库根路径(如 /home/git/gitea-repositories)、HTTP 端口 3000 和基础 URL。

配置好之后,点击"安装 Gitea"。完成后,注册第一个用户,该用户将自动成为管理员。

相关推荐
Winlifes2 天前
我给 Codex 做了一个 Git 面板:分支树、提交历史和工作区操作
git
郑州光合科技余经理3 天前
同城外卖小程序开发:下单成功后,后台导出能不能对上用户端状态
开发语言·前端·git·后端·uni-app·php·ai编程
我命由我123453 天前
Git 推送报错:error: src refspec main does not match any
运维·git·gitee·github·运维开发·学习方法·版本控制
Lcr3s3 天前
Git基础之(0):如何在Ubuntu(Linux)上安装git
git
玄芯散人4 天前
【筑基·058】Git协作工作流:冲突解决和PR流程
git·版本控制·团队协作
zoutao984 天前
Gitea Actions 自定义 Runner 镜像与自动化部署实战
ci/cd·docker·gitea
寺中人4 天前
Git 版本控制完全入门指南:从安装到实战,提交 + 分支 + 协作 + 冲突解决全拆解
git·开发工具·版本控制·团队协作·代码管理
荔枝梅梅4 天前
新手程序员 SSH 第一课:从 Git 仓库连接失败理解 SSH 协议与密钥配置
git
玄芯散人4 天前
【筑基·057】Git代码时光机:版本控制入门到分支管理
git·版本控制·嵌入式开发
szephyr5 天前
Git 分支管理实战:feature/release/hotfix 怎么用才不乱
git·分支管理·团队协作·工作流·hotfix