当前位置:首页 > 系统教程 > 正文

从零开始:Ubuntu下部署私有化Gitea服务器

欢迎来到Ubuntu Gitea部署教程!Gitea是一款轻量级、开源的自托管Git服务,让你轻松搭建属于自己的私有化代码仓库。配合Nginx反向代理配置,可以实现域名访问和SSL加密,打造专业级的代码托管平台。本教程面向小白,每一步都有详细解释。

1. 准备工作:更新系统与安装基础工具

在Ubuntu服务器上,首先更新软件包索引并升级现有软件:

sudo apt update && sudo apt upgrade -y

然后安装curl和git(Gitea依赖git):

sudo apt install curl git -y

2. 安装Gitea(二进制方式)

Gitea官方提供预编译二进制,下载并赋予执行权限:

sudo curl -L https://dl.gitea.com/gitea/1.22/gitea-1.22-linux-amd64 -o /usr/local/bin/giteasudo chmod +x /usr/local/bin/gitea

创建git用户(用于运行Gitea)和相关目录结构:

sudo adduser --system --group --disabled-password --shell /bin/bash --home /home/git gitsudo 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/giteasudo chown root:git /etc/giteasudo chmod 770 /etc/gitea
从零开始:Ubuntu下部署私有化Gitea服务器 Ubuntu Gitea部署 私有化代码仓库 Nginx反向代理配置 自托管Git服务 第1张

3. 配置Gitea服务(Systemd)

创建Systemd服务文件/etc/systemd/system/gitea.service,内容如下:

[Unit]Description=Gitea (Git with a cup of tea)After=network.target[Service]User=gitGroup=gitWorkingDirectory=/var/lib/gitea/ExecStart=/usr/local/bin/gitea web --config /etc/gitea/app.iniRestart=alwaysEnvironment=USER=git HOME=/home/git GITEA_WORK_DIR=/var/lib/gitea[Install]WantedBy=multi-user.target

启动并设置开机自启:

sudo systemctl daemon-reloadsudo systemctl enable giteasudo systemctl start gitea

4. 初始化Gitea(通过Web界面)

默认Gitea监听3000端口。在浏览器访问http://你的服务器IP:3000,根据引导完成初始配置。推荐使用SQLite3数据库(无需额外安装),管理员账号自行设置。此时你的私有化代码仓库已经可以本地访问了!

5. 安装Nginx并配置反向代理

安装Nginx:

sudo apt install nginx -y

创建Nginx站点配置文件/etc/nginx/sites-available/gitea,写入:

server {    listen 80;    server_name git.example.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;    }}

启用配置并测试语法:

sudo ln -s /etc/nginx/sites-available/gitea /etc/nginx/sites-enabled/sudo nginx -t

重新加载Nginx:

sudo systemctl reload nginx

至此,你已经完成了Nginx反向代理配置,通过域名即可访问Gitea。

6. (可选)配置SSL证书(HTTPS)

使用Let"s Encrypt免费证书,安装Certbot:

sudo apt install certbot python3-certbot-nginx -ysudo certbot --nginx -d git.example.com

按照提示完成,即可自动启用HTTPS,提升自托管Git服务的安全性。

7. 验证与后续管理

现在访问你的域名(或IP),应该能看到Gitea登录页面。你可以创建仓库、添加用户,完全掌控自己的代码。日常维护可通过systemctl管理Gitea和Nginx服务。


通过本教程,你成功在Ubuntu上部署了私有化代码仓库,并学会了Nginx反向代理配置。现在开始享受自托管Git服务的便利吧!更多Ubuntu Gitea部署技巧,欢迎持续关注。