Ubuntu 20.04安装配置Gitea

一、前言

Gitea是用Go语言编写的自托管开源git服务器。它是Gogs的分支。Gitea包括存储库文件编辑器,项目问题跟踪,用户管理,通知,内置Wiki等。

Gitea是轻型应用程序,可以安装在低配置系统。如果您正在寻找内存占用量少得多的Gitlab替代产品,并且不需要Gitlab提供的所有功能,那么您绝对应该尝试Gitea。

 

二、安装Gitea 数据库

Gitea支持SQLite,PostgreSQLMySQL/MariaDB作为数据库后端。

我们将使用SQLite作为Gitea的数据库。如果您的Ubuntu 20.04未安装SQLite,可以运行命令sudo apt update && sudo apt install sqlite3安装SQLite。

Gitea提供Docker映像,也可以使用源码,二进制文件的方式安装。我们将使用二进制文件安装Gitea。

安装Gitea的第一步是安装git。运行命令sudo apt install git。当git安装完成后运行命令git --version验证git的安装。

我们将创建一个普通用户运行Gitea。运行命令adduser命令创建用户git。命令将创建一个名为git的用户和组,并将家目录设置为/home/git

sudo apt update
sudo apt install sqlite3 git

sudo adduser --system --group --disabled-password --shell /bin/bash --home /home/git --gecos 'Git Version Control' git

 

三、下载 Gitea

访问Gitea下载页面,并下载适用于您的系统架构二进制文件。当前,最新版本为1.18.0。

如果有可用的新版本,请在下面的命令中更改VERSION变量。然后运行wget命令下载Gitea二进制文件到/tmp目录。

gitea二进制文件可以在任何目录运行。我们将遵循Linux目录约定并将二进制文件移动到/usr/local/bin目录。

默认情况下二进制文件不具有可执行权限。因此需要为gitea二进制文件添加可执行权限,运行chmod命令

运行mkdir命令创建目录并设置所需的权限和所有权。这是官方的Gitea文档建议使用目录结构。

/etc/gitea目录的权限设置为770,在安装向导时可以创建配置文件。安装完成后,我们将设置更多限制性权限。

VERSION=1.18.0
sudo wget -O /tmp/gitea https://dl.gitea.io/gitea/${VERSION}/gitea-${VERSION}-linux-amd64

sudo mv /tmp/gitea /usr/local/bin

sudo chmod +x /usr/local/bin/gitea

sudo mkdir -p /var/lib/gitea/{custom,data,indexers,public,log}
sudo chown git: /var/lib/gitea/{data,indexers,log}
sudo chmod 750 /var/lib/gitea/{data,indexers,log}
sudo mkdir /etc/gitea
sudo chown root:git /etc/gitea
sudo chmod 770 /etc/gitea

部分运行记录:

mulan@mulan-ai:~$ VERSION=1.18.0
mulan@mulan-ai:~$ sudo wget -O /tmp/gitea https://dl.gitea.io/gitea/${VERSION}/gitea-${VERSION}-linux-amd64
[sudo] password for mulan:
--2023-01-05 15:53:40--  https://dl.gitea.io/gitea/1.18.0/gitea-1.18.0-linux-amd64
Resolving dl.gitea.io (dl.gitea.io)... 143.244.50.88, 2400:52e0:1a01::899:1
Connecting to dl.gitea.io (dl.gitea.io)|143.244.50.88|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 116453416 (111M) [application/octet-stream]
Saving to: ‘/tmp/gitea’

/tmp/gitea              100%[===============================>] 111.06M   105KB/s    in 14m 57s

2023-01-05 16:08:40 (127 KB/s) - ‘/tmp/gitea’ saved [116453416/116453416]

  

四、创建Systemd 服务

Gitea提供已配置的Systemd Unit文件。可以运行wget命令将Systemd Unit文件下载到/etc/systemd/system/目录。

完成后,重新加载Systemd,运行命令sudo systemctl daemon-reload。然后启用并启动Gitea服务。

验证Gitea服务的运行状态,运行命令sudo systemctl status gitea。你将会看到Gitea服务已成功启动。

sudo wget https://raw.githubusercontent.com/go-gitea/gitea/master/contrib/systemd/gitea.service -P /etc/systemd/system/

sudo systemctl daemon-reload
sudo systemctl start gitea
sudo systemctl enable gitea
sudo systemctl status gitea

补充:看过前面文章的朋友也可以考虑使用supervisor来管理gitea服务。

 

五、配置 Gitea

现在我们成功运行Gitea,是时候通过Web界面完成安装。默认情况下,Gitea监听所有在端口3000的连接。

如果您Ubuntu 20.04正在运行运行UFW防火墙,则需要打开Gitea端口。允许端口3000的连接。运行命令

sudo ufw allow 3000/tcp

打开浏览器,输入http://127.0.0.1:3000。将数据库设置为以下参数:  

  

  

  

posted @ 2023-01-05 15:46  小金乌会发光-Z&M  阅读(1389)  评论(0编辑  收藏  举报