常用的私有Git服务器包含GitLab、Gitea、Gogs等。相对来说,GitLab功能最为全面,内置CI,但对内存和CPU的要求比较高,而Gogs和Gitea均比较轻量化。根据实际需求与条件最终选择了Gitea,Gitea是Gogs的社区版本,足够轻量化,并且包含LFS的支持。
2|0环境准备
2|1安装数据库:采用SQLite数据库
-
Windows安装:
下载网址:https://sqlite.org/download.html,如下图下载预编译版本中的sqlite-dll-win64-x64-3320300.zip版本安装即可。
安装说明:
安装时在安装目录(如C:\Program Files\SQLite3)解压下载下来的文件,同时添加该路径到环境变量Path中(添加到System的Path)。
到此SQLite已经安装完成,在命令提示符内输入sqlite3根据是否出现版本号等信息可以验证是否成功添加到环境变量。
对于SQLite的可视化管理可以使用SQliteStudio即可。
-
Linux安装:
Linux下安装SQLite,可以从下载页下载源代码自行编译,也可以直接下载编译好的二进制包。还可以更简单的从包源安装:
2|2安装Git
-
Windows安装:
Git的taobao镜像下载(原网站国内访问较慢):https://npm.taobao.org/mirrors/git-for-windows/
下载完成后,是个可执行的安装文件。运行安装文件,即可完成Git客户端的安装。
安装完成后,也需要在环境变量中设置
Path
,加进去Git
命令的运行目录。Git运行目录是Git安装目录下的bin
目录。 -
Linux安装:
大多数情况下,Linux下会自带Git客户端,可以检查一下:
如果已安装,会返回版本信息。
如果没有安装,就用包管理装一个
3|0安装Gitea
-
Windows安装
下载for Windows的最新版1.11.5:https://gitea.io/zh-cn/
把下载下来的文件名改为
gitea.exe
,然后放到一个目录,比如D:\gitea
目录下,安装就完成了。Gitea在Windows上可以直接运行,也可以加为Service。
加到Service里运行就不用每次手动打开了,输入命令:
点确定,就加到Windows服务里了。
-
Linux安装
下载for Linux的最新版1.12.1:
下载完成后,把gitea移到
/usr/local/bin
目录,并改为可执行。Gitea就安装完成了。
下面建几个Gitea的数据目录:
其中:
/var/lib/gitea是存放仓库相关文件的目录
/etc/gitea是存放配置文件app.ini的目录
为了服务器的安全,我们还需要创建一个系统用户
git
,把上面建立的几个目录给到
git
用户:Gitea在Linux上需要以Service的方式运行。
把以下配置保存到文件
gitea.service
:修改
gitea.service
为可执行,并复制到/etc/systemd/system
目录:最后一步,启动Service:
Linux下的安装配置就完成了。
4|0设置Gitea
运行Gitea后,打开http://localhost:3000即可以进入软件配置界面如下图:
-
数据库设置
先选择数据库类型。如果是用原有的数据库,相关的参数需要填进去。我们安装了SQLite3,所以选择这个。下面会有一个数据库路径,可以使用默认的。在Windows下,Gitea会自己在运行目录下建立目录和数据文件;Linux下是刚刚预先建立好的。
如果修改目录的话,Windows下不存在问题,但Linux下需要注意目录的权限。这个权限会跟着下面「以用户名运行」参数来设置。
-
一般设置
站点名称:页面首页显示的名称。
仓库根目录:用来存放源代码二进制数据,有默认位置,可以修改。
LFS根目录:用来存放大文件的目录,用于LFS服务。
-
禁止用户自助注册
如果可以开启就不能自己注册账号了,需要管理员统一管理。
-
管理员帐号设置
第一个注册的帐号,会自动成为管理员。在上面禁止注册后,需要这个管理员来建立用户帐号。
-
版本升级
如果需要升级新版本,先下载新版本的Gitea,然后停掉服务,覆盖旧的Gitea程序,再启动服务就可以了。
其他更多设置查看Gitea的文档即可。
参考文献:
[1] https://mp.weixin.qq.com/s/QsFhT0G7ny9K8F8mnCUj3A
[2] https://www.jianshu.com/p/acd5fc63895d
__EOF__