在Centos上搭建轻量代码托管平台Gitea
2023-12-06 12:07:46
在 Centos 上搭建代码管理平台 Gitea
一, 官网概述
Gitea 是一个自己托管的 Git 服务程序。他和 GitHub, Bitbucket or Gitlab 等比较类似。他是从 Gogs 发展而来,不过我们已经 Fork 并且命名为 Gitea。
Gitea 的首要目标是创建一个极易安装,运行非常快速,安装和使用体验良好的自建 Git 服务。我们采用 Go 作为后端语言,这使我们只要生成一个可执行程序即可。并且他还支持跨平台,支持 Linux, macOS 和 Windows 以及各种架构,除了 x86,amd64,还包括 ARM 和 PowerPC。
二, 环境准备
- mysql (>=5.7)
- Git (>=2.0)
- Centos 操作系统
三, 开始安装
配置 mysql 数据库 (需要设置 mysql 在安装的服务器上可以访问)
首先创建一个 mysql 的名为 (giteadb) 的数据库. 可用图形化工具, 也可使用命令:
1
2CREATE DATABASE giteadb CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_unicode_ci';
创建一个用户用来操作 giteadb 数据库.
测试该用户是否可以操作该数据库.
下载 Gitea 二进制安装包
下载页面选择对应平台的二进制文件
使用 wget 下载
1
2wget -O gitea https://dl.gitea.com/gitea/1.20.4/gitea-1.20.4-linux-amd64
下载完成后,把 gitea 移到 / usr/local/bin 目录,并改为可执行。
1
2
3mv gitea /usr/local/bin
chmod +x gitea为了安全起见,我们还需要创建一个系统用户, 推荐使用 (git)
1
2
3
4
5
6
7
8
9
10groupadd --system git
adduser \
--system \
--shell /bin/bash \
--comment 'Git Version Control' \
--gid git \
--home-dir /home/git \
--create-home \
git下面建几个 Gitea 的数据目录, 并授权
1
2
3
4
5
6
7mkdir -p /var/lib/gitea/{custom,data,log} # 是存放仓库相关文件的目录
chown -R git:git /var/lib/gitea/
chmod -R 750 /var/lib/gitea/
mkdir /etc/gitea # 是存放配置文件app.ini的目录
chown root:git /etc/gitea
chmod 770 /etc/gitea配置 Gitea 工作路径
1
2export GITEA_WORK_DIR=/var/lib/gitea/
Gitea 在 Linux 上需要以 Service 的方式运行, 把以下配置保存到文件 gitea.service
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30[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/local/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修改 gitea.service 为可执行,并复制到 / etc/systemd/system 目录
1
2
3
4
5
6chmod +x gitea.service
mv gitea.service /etc/systemd/system
systemctl enable gitea.service # 设置为开机启动
systemctl start gitea.service # 启动gitea启动后浏览器访问 http://ip:3000 (记得防火墙放行端口), 就可以看到如下页面
后续的按照提示进行填写就可以了.
最后就可以看到首页
五, 提示, 相关配置
关闭注册功能, 关闭 OpenId 登录方式
1
2vim /etc/gitea/app.ini #打开gitea的配置文件
关闭下图所示的配置
六, 总结
看到监控面板, 它的内存占用相比于 gitlab 是非常小的.