记录自建Gitea代码托管服务操作步骤分享!
虽然前一段时间入手了4H16G12M的腾讯云轻量应用的服务器,虽然理论上和实际上对于跑Gitlab来说已经绰绰有余了(何况我还是私人用,单用户),但是吧,之前被Gitlab坑过一次(迁移,备份后新机子上导入,导入成功了,但是实际上看有部分项目没有还原),而且上面也说了,这配置跑Gitlab绰绰有余,但Gitlab有属于那种“集成式”的服务,自带了比如想Nginx等服务,你说好吧,也好!你说不好吧!也不好!好处就是简单粗暴,坏处就是臃肿;而且不好跟第三方整合(比如宝塔面板),于是乎想想,算了,反正我一个人用,换Gitea吧,虽然看上去很“简陋”,但架不住轻巧,
准备工作
首先,在安装gitea之前,请确保服务器已经有了如下软件:
- git
必须
- wget (可选,如果你熟悉其他类似命令,如:curl)
- vim(可选,如果你熟悉其他类似命令,如:vi)
开始安装
首先,我们建立一个用户,这一步新版本貌似是必须得(不能用root账号运行),当然这也是个好习惯,所以我们先建立一个新用户(可以不设置密码,如果你暂不使用ssh方式拉取代码的话)
useradd git
建立后,使用如下命令,切换用户然后到该用户的目录下,建一个gitea目录
su git
cd ~
mkdir gitea
cd gitea
这一步操作完成后,就直接下载二进制包就行了,提供如下链接
- 官方下载页:https://dl.gitea.io/
- 截止到写博文是最新版下载链接:https://dl.gitea.io/gitea/1.16.3/gitea-1.16.3-linux-amd64
根据如上信息,可得出如下命令(也可以自行修改为curl指令)
2022年3月4日补充:实测最新版拉取远程仓库会有问题,所以这里采用使用中文文档内推荐的1.16.0版本!
wget -c wget -O gitea https://dl.gitea.io/gitea/1.16.0/gitea-1.16.0-linux-amd64
下载完成后,给予该文件执行权限(使用 chmod 指令)
chmod +x gitea
当走到这一步其实就已经搭建好了,你只需要启动就行了,启动命令如下:
./gitea web
当然,如果你想在后台运行,方式有很多,比如使用 screen
或者命令后面加个 &
号,参考命令如下:
./gitea web &
当然很显然,Gitea没有Gitlab那样全权包办,如果你服务器有重启需求,并且希望每次重启自动启动这个gitea服务,那么可以继续往下阅读,反之你就不用继续往下看了!
开机自启动
开机自启动其实很好时间,只需要注册成系统服务即可!首先切换到root账户(如果已经是root了就不用切换了)
su root
切换后,使用 vim
创建 /etc/systemd/system/gitea.service
文件,当然你用其他类似的指令,如:vi
也可以!
vim /etc/systemd/system/gitea.service
在该文件内填入如下内容(仅供参考,实测可用)
[Unit]
Description=Gitea
After=syslog.target
After=network.target
[Service]
RestartSec=2s
Type=simple
User=git
Group=git
ExecStart=/home/git/gitea/gitea
Restart=always
[Install]
WantedBy=multi-user.target
然后就很简单了,开启这个服务即可,命令如下:
sudo systemctl enable gitea
sudo systemctl start gitea