因为有很多人的Linux版本比较低,内存配置也较低,X86 ,32位系统的;所以这里推荐采用二进制安装gogs,并且使用Mysql;这个是傻瓜式的安装方案,适合绝大多数人(提及了centos7的安装思路),本文原创,亲测OK;
查找了不少资料,遇到了不少坑,step by step,这里记录下:
首先准备工作:我们去gogs官网下载二进制安装包;其次我们需要去找一个LAMP一键安装包(也是很简单的搞定),主要是我们需要一个图形化的web界面来管理Mysql数据库,
而有了LAMP一键安装包,这些麻烦事都搞定了;
LAMP一键安装包指的是Linux+Apache+Mysql+Php这个黄金组合
下面直接敲命令,一定是在root管理员权限下:
如果是初始化不久的Linux系统,建议首先执行 yum update更新下yum
yum install git
yum install wget
adduser git //创建用户
git passwd git //设置密码
//创建用户组
groupadd git
//将用户git加入用户组
git usermod -G git git
切换到git用户,要不然后面的自启动配置会很麻烦,执行下面的命令:
wget https://dl.gogs.io/0.11.86/gogs_0.11.86_linux_386.tar.gz
tar -xzvf gogs_0.11.86_linux_386.tar.gz
cd gogs
进入到刚刚解压后的目录执行命令 ./gogs web,出现以下信息:
它告诉你,可以使用 http://ip:3000方式来打开网页配置你的gogs了。
################################################################
我们不急着去安装,因为我们的mysql还没有准备好,我们需要去下载一个LAMP一键安装包:
具体的,去这个网站下载脚本:https://lnmp.org/download.html
我们切换到root权限安装LAMP:
wget http://soft.vpser.net/lnmp/lnmp1.5.tar.gz -cO lnmp1.5.tar.gz && tar zxf lnmp1.5.tar.gz && cd lnmp1.5 && ./install.sh lnmp
我们选择默认的Mysql5.5即可,因为我这里的是Centos6.10 X86版本,内存配置较低,只有512M内存;
LAMP的整个安装过程大概8分钟;全部的配置选择默认即可,因为内存和性能很低,所以安装时间会根据你Linux配置而定;
最后安装成功:
具体的安装教程:https://lnmp.org/install.html
搞完之后我们去网页上面配置我们的gogs即可。别忘了安装完LAMP环境之后,去phpmyadmin界面进入数据库里面创建一个名字为的gogs的数据库;
创建好之后,我们就可以去到gogs安装界面愉快地配置我们的gogs了。
操作过程中会遇到:
因为gogs的监听,由于我们安装LAMP而中断,所以进入gogs目录重新执行 ./gogs web开启监听:
安装过程中还会遇到问题:
因为默认的mysql安装的时候字符集设置的是utf8mb4,具体参考这篇http://www.linhongxu.com/post/view?id=232
gogs这个数据库创建的时候字符集用 utf8_general_ci 即可
最后安装成功:
最后是让其在后台运行:
具体命令: nohup ./gogs web > nohup.out 2>&1 &
这个只能使gogs在后台运行,但是机器重启的话,gogs服务还是无法自动启动;
自动以服务的形式开机启动,gogs官方文档里面提到systemd服务模板文件:
、
我们找到这个文件:
它的具体路径是:/home/git/gogs/scripts/systemd/gogs.service
用nano打开,看到里面的内容,是关于自动启动的配置:
把这个文件拷贝到系统目录/etc/systemd/system/
具体的命令是:
cp /home/git/gogs/scripts/systemd/gogs.service /etc/systemd/system/
会发现centos6.5~6.10这几个版本的Linux没有这个路径/etc/systemd/system/ 这个一般是centos 7以上才有。怎么办,无法使用这个方法启动gogs了;
如果你的系统是centos7可以参考
拷贝完文件之后,通过 sudo systemctl enable gogs
命令激活,最后执行 sudo systemctl start gogs
。就可以了;
Centos6系统如何自动启动gogs呢?
官方提供的方法:
切换到root,拷贝文件到系统自启动目录:
cp /home/git/gogs/scripts/init/centos/gogs /etc/init.d
因为之前已经有了gogs了,会提示是否覆盖,y,覆盖;回车
之后我们root启动gogs服务,启动成功:
我们进入到我们的git仓库,已经成功运行了:(这里最好是弄一个二级域名对其进行绑定,方便日后服务器出现故障,或者迁移Linux服务器的时候使用,最好养成定期备份的好习惯)
最后我们reboot重启centos6系统,发现gogs服务能够自动开机启动了。