一、使用yum安装Git:
yum install git
二、添加git用户:
useradd git
三、查看CentOS内核版本,确定架构(x64、x86还是arm)
uname -a
x86 ======> 32位
x86_64 和 x64 以及AMD64 ======> 都是64位
x86是指intel的开发的一种32位指令集,从386开始时代开始的,一直沿用至今,是一种cisc指令集,所有intel早期的cpu,amd早期的cpu都支持这种指令集,ntel官方文档里面称为“IA-32”
x84_64是x86 CPU开始迈向64位的时候,有2选择:1、向下兼容x86。2、完全重新设计指令集,不兼容x86。AMD抢跑了,比Intel率先制造出了商用的兼容x86的CPU,AMD称之为AMD64。而Intel选择了设计一种不兼容x86的全新64为指令集,称之为IA-64,但是比amd晚了一步,因为是全新设计的CPU,没有编译器,也不支持windows、后来不得不在时机落后的情况下也开始支持AMD64的指令集,但是换了个名字,叫x86_64,表示是x86指令集的64扩展,。也就是说实际上,x86_64,x64,AMD64基本上是同一个东西。
四、下载与其对应的二进制安装包:选择自己喜欢的版本 https://dl.gogs.io
wget https://dl.gogs.io/0.11.34/linux_amd64.tar.gz
五、将安装包解压至git用户目录下(/home/git)并修改其权限和所有者:
tar -xf linux_amd64.tar.gz -C /home/git
chmod -R 700 /home/git/gogs
chown -R git:git /home/git/gogs
六、使用git用户运行gogs:
su - git -c "cd /home/git/gogs && ./gogs web &"
七、使用浏览器访问http://IP:3000,完成配置安装,建议使用SQLite:
按需求自行配置(此处略)
八、添加启动项和守护进程:
ln -sf /home/git/gogs/scripts/systemd/gogs.service /usr/lib/systemd/
chmod u+x /home/git/gogs/scripts/systemd/gogs.service
ln -sf /home/git/gogs/scripts/init/centos/gogs /etc/init.d/
chmod u+x /home/git/gogs/scripts/init/centos/gogs
/sbin/chkconfig gogs on
service gogs restart
注:如果SELinux和firewall处于打开状态,请注意相应规则的配置。
反思和总结:
由于不熟悉gogs在实际配置过程中犯了以下几个错误,和大家共勉一下:
- 应当先完成install安装再进行启动项和守护进程配置;
- 配置systemd时需要同时两个文件,因为对网上一篇文章的误解,没有坚持下去,最后配置失败后才绕回来;
- 在摸索过程中,盲目的运行过script目录下各种安装脚本,导致安装文件混乱不堪(部分程序文件丢失),期间各种安装失败,折腾大半天后,在意外检查程序目录时才发现已损坏;
- 运行安装脚本时错误的使用root权限运行导致安装后文件权限的各种问题;
- 首次下载安装包时,下载了错误版本的安装包,非常低级的问题;
- 对git用户的登录权限进行了过于严格控制,导致push的时候无法上传;
- 应该在gogs目录下运行./gogs web这点非常重要,因为之前未注意,在/home/git下执行,导致data目录位置生成路径错误。