一、使用yum安装Git:
sudo yum install git
二、添加git用户:
sudo useradd git
三、查看CentOS内核版本,确定架构(x64、x86还是arm)
uname -a
四、下载与其对应的二进制安装包:
wget https://dl.gogs.io/0.11.34/linux_amd64.tar.gz
五、将安装包解压至git用户目录下(/home/git)并修改其权限和所有者:
sudo tar -xf linux_amd64.tar.gz -C /home/git sudo chmod -R 700 /home/git/gogs sudo chown -R git:git /home/git/gogs
六、使用git用户运行gogs:
sudo su - git -c "cd /home/git/gogs && ./gogs web &"
七、使用浏览器访问http://IP:3000,完成配置安装,建议使用SQLite:
按需求自行配置(此处略)
八、添加启动项和守护进程:
sudo ln -sf /home/git/gogs/scripts/systemd/gogs.service /usr/lib/systemd/ sudo chmod u+x /home/git/gogs/scripts/systemd/gogs.service sudo ln -sf /home/git/gogs/scripts/init/centos/gogs /etc/init.d/ sudo chmod u+x /home/git/gogs/scripts/init/centos/gogs sudo /sbin/chkconfig gogs on sudo service gogs restart
到此为止,Centos7下gogs的配置基本完成
注:如果SELinux和firewall处于打开状态,请注意相应规则的配置。
反思和总结:
由于不熟悉gogs在实际配置过程中犯了以下几个错误,和大家共勉一下:
1、应当先完成install安装再进行启动项和守护进程配置;
2、配置systemd时需要同时两个文件,因为对网上一篇文章的误解,没有坚持下去,最后配置失败后才绕回来;
3、在摸索过程中,盲目的运行过script目录下各种安装脚本,导致安装文件混乱不堪(部分程序文件丢失),期间各种安装失败,折腾大半天后,在意外检查程序目录时才发现已损坏;
4、运行安装脚本时错误的使用root权限运行导致安装后文件权限的各种问题;
5、首次下载安装包时,下载了错误版本的安装包,非常低级的问题;
6、对git用户的登录权限进行了过于严格控制,导致push的时候无法上传;
7、应该在gogs目录下运行./gogs web这点非常重要,因为之前未注意,在/home/git下执行,导致data目录位置生成路径错误。