Gitea是用Go语言编写的自托管开源git服务器。 它是 Gogs 的分支。 Gitea包括存储库文件编辑器,项目问题跟踪,用户管理,通知,内置Wiki等。
Gitea是轻型应用程序,可以安装在低配置系统上。 如果您正在寻找内存占用量少得多的Gitlab替代产品,并且不需要 Gitlab 提供的所有功能,那么您绝对应该尝试Gitea。
本教程介绍了如何在Ubuntu 18.04上安装和配置Gitea。 相同的说明适用于Ubuntu 16.04和任何其他基于Debian的发行版。
先决条件
Gitea支持SQLite,PostgreSQL和MySQL/MariaDB 作为数据库后端。
我们将使用SQLite作为Gitea的数据库。 如果您的Ubuntu系统上未安装SQLite,则可以通过以 sudo用户的身份输入以下命令来安装它。
sudo apt updatesudo apt install sqlite3
安装Gitea
Gitea提供Docker映像,可以从源代码,二进制文件和软件包中安装。 我们将从二进制文件安装Gitea。
安装Git
第一步是在您的服务器上安装Git :
sudo apt updatesudo apt install git
通过显示Git版本来验证安装:
git --version
git version 2.17.1
创建Git用户
创建一个新的系统用户,该用户将通过键入以下内容来运行Gitea应用程序:
sudo adduser --system --group --disabled-password --shell /bin/bash --home /home/git --gecos 'Git Version Control' git
该命令将创建一个名为git
的新用户和组,并将主目录设置为/home/git
。 输出如下所示:
Adding system user `git' (UID 111) ...Adding new group `git' (GID 116) ...
Adding new user `git' (UID 111) with group `git' ...
Creating home directory `/home/git' ...
下载Gitea二进制文件
访问 Gitea下载页面,并下载适用于您的体系结构的最新二进制文件。 在撰写本文时,最新版本为1.10.2。 如果有可用的新版本,请在下面的命令中更改VERSION
变量。
使用以下 wget
命令在/tmp
目录中下载Gitea二进制文件:
VERSION=1.10.2
gitea
二进制文件可以在任何位置运行。 我们将遵循约定并将二进制文件移至/usr/local/bin
目录:
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}
官方的Gitea文档建议使用以上目录结构。将/etc/gitea
目录的权限设置为770
,以便安装向导可以创建配置文件。 安装完成后,我们将设置更多限制性权限。
创建Systemd Unit文件
Gitea提供了已配置为与我们的设置匹配的Systemd Unit文件。
通过键入以下内容将文件下载到/etc/systemd/system/
目录:
sudo apt updatesudo apt install git
0
完成后,启用并启动Gitea服务:
sudo apt updatesudo apt install git
1
验证服务已成功启动:
sudo apt updatesudo apt install git
2
sudo apt updatesudo apt install git
3
配置Gitea
现在下载并运行了Gitea,是时候通过Web界面完成安装了。默认情况下,Gita侦听所有网络接口上端口3000
上的连接。如果您的服务器上运行的是 UFW防火墙,则需要打开Gitea端口:
要允许端口3000
上的流量,请输入以下命令:
sudo apt updatesudo apt install git
4
打开浏览器,键入http://YOUR_DOMAIN_IR_IP:3000
数据库设置:
数据库类型:SQLite3路径:使用绝对路径,/var/lib/gitea/data/gitea.db
应用常规设置:
站点标题:输入您的组织名称。存储库根路径:保留默认值/home/git/gitea-repositories
。Git LFS根路径:保留默认值/var/lib/gitea/data/lfs
。指定用户名身份运行:gitSSH服务器域:输入您的域或服务器IP地址。SSH端口:22,如果SSH正在监听其他端口,请更改它 端口Gitea HTTP监听端口:3000Gitea基本URL:使用http和您的域或服务器IP地址。登录路径:保留默认值/var/lib/gitea/log
]您可以随时通过编辑Gitea配置文件来更改设置。完成后,点击“安装Gitea”按钮。 安装是即时的。 完成后,您将被重定向到登录页面。点击“立即注册”链接。 第一个注册用户将自动添加到管理员组。
使用以下方法将Gitea配置文件的权限更改为只读:
sudo apt updatesudo apt install git
5
至此, Gitea已安装在您的Ubuntu计算机上。
将Nginx配置为SSL终止代理
此步骤是可选的,但强烈建议您这样做。 要将 Nginx用作反向代理,您需要具有一个指向服务器公共IP的域或子域。 在本教程中,我们将使用git.example.com
。
首先,安装Nginx并使用以下指南生成免费的“Let’s Encrypt SSL”证书:
如何在Ubuntu 18.04上安装Nginx 使用Let’s Encrypt在Ubuntu 18.04上来保护Nginx完成后,打开文本编辑器并编辑域服务器块文件:
sudo apt updatesudo apt install git
6
/etc/nginx/sites-enabled/git.example.com
sudo apt updatesudo apt install git
7
请不要忘记将git.example.com替换为您的Gitea网域,并为SSL证书文件设置正确的路径。 HTTP流量重定向到HTTPS
重新启动Nginx服务,以使更改生效:
sudo apt updatesudo apt install git
8
接下来,更改Gitea域和根URL。 为此,请打开配置文件并编辑以下行:
sudo apt updatesudo apt install git
9
/etc/gitea/app.ini
git --version
0
通过键入以下内容来重新启动Gitea服务:
git --version
1
至此,已配置Gitea代理,您可以在以下位置访问它:https://git.example.com
配置电子邮件通知
为了使Gitea能够发送通知电子邮件,您可以安装Postfix或使用某些事务性邮件服务,例如SendGrid,MailChimp,MailGun或SES。
要启用电子邮件通知,请打开配置文件并编辑以下行:
sudo apt updatesudo apt install git
9
/etc/gitea/app.ini
git --version
3
请确保您输入了正确的SMTP服务器信息。
重新启动Gitea服务以使更改生效:
git --version
1
要验证设置并发送测试电子邮件,请登录Gitea,然后转到:网站管理> 配置> SMTP邮件程序配置。
Gitea还允许您通过创建 web webhook 连接到Slack,并将通知发送到您的 Slack频道。
升级Gitea
要升级到最新的Gitea版本,只需下载并替换二进制文件即可。
停止Gitea服务:
git --version
5
下载最新的Gitea版本并将其移至/usr/local/bin
目录:
git --version
6
让二进制可执行文件:
sudo chmod +x /usr/local/bin/gitea
重新启动Gitea服务:
git --version
1
结论
本教程向您介绍了在Ubuntu 18.04上安装Gitea的过程。
您现在应该访问 Gitea文档页面,并学习如何配置Gitea实例并创建第一个项目。
如果您有任何疑问,请随时在下面发表评论。
还没有评论,来说两句吧...