Gogs是一种开放源代码的自托管Git服务。使用Go语言开发使得Gogs能够通过独立的二进制分发。支持Go语言支持的所有平台。包括 Linux。macOS。Windows 以及ARM 平台。那么如何在Linux CentOS 7上安装配置Gogs程序呢?下面一起来看下相关解说。
相关环境:这里以RAKsmart美国服务器为例。系统选用的是CentOS 7。
1。安装Git
Git服务器端和客户端1.8.3或更高版本。使用以下命令安装。
yum install -y git
2。安装数据库(支持以下任何一种)
MySQL(5.7版或更高版本)/ MariaDB(10.2版或更高版本)
PostgreSQL(版本9.4.4或更高版本)
SQLite3
3。安装Gogs程序
#下载gogs安装包
wget https://dl.gogs.io/0.11.86/gogs_0.11.86_linux_amd64.tar.gz
#如果提示未找到wget命令。可以使用yum安装
yum install -y wget
#解压文件
tar -xzvf gogs_0.11.86_linux_amd64.tar.gz
#创建git用户
useradd git
#将gogs安装包所有者改为git
chown -R git:git /gogs
4。在数据库上创建Gogs用户并授予权限
#root登录mysql
mysql -uroot -p密码
#创建gogs数据库
create database gogs default charset utf8 collate utf8_general_ci;
#创建gogs用户并授予该用户gogs数据库的全部权限
GRANT ALL PRIVILEGES ON gogs.* TO ‘gogs’@’%’ IDENTIFIED BY ‘123456’;
#刷新权限
flush privileges;
5。运行Gogs并重启服务器
#进入gogs安装路径
cd /gogs
#运行gogs
#默认端口启动
su git
./gogs web
#指定端口启动
su git
./gogs web –port 3001
使用这种方法属于前台启动。如果关闭终端会自动退出。也可以采用后台启动方法。
#设置开机自启
#将gogs的启动脚本复制到/etc/init.d/路径下:
#gogs自己提供了默认的启动脚本。在gogs安装包的scripts/init/路径下,可以根据自己的操作系统选择不同的脚本
cp /gogs/scripts/init/centos/gogs /etc/rc.d/init.d/
#编辑启动脚本
vim /etc/init.d/gogs
#修改启动脚本的GOGS_HOME和GOGS_USER。它们分别是gogs的安装路径和gogs的启动用户。例如在本例中将GOGS_HOME 改为/home/gogs。GOGS_USER改为git
#进入/etc/init.d路径
cd /etc/init.d
#给启动脚本赋予可执行权限
chmod +x gogs
#启动gogs
service gogs start
#关闭gogs
service gogs stop
#重启gogs
service gogs restart
#将gogs设置为开机自启动
chkconfig gogs on
#检查是否加入成功
chkconfig –list gogs
6。前端安装Gogs程序
如果默认3000端口已经被其他端口占用的话。使用后台启动的方式是无法正常启动的。因为在未进行前端安装的情况下。后台启动无法指定端口。只能在前端安装gogs之后才会生成相应的配置文件。
您可使用服务器的IP地址(http:// Server_IP:3000 )通过Web浏览器访问首次运行的配置设置。将自动进入如下安装界面。填写相关配置信息。
信息填写完毕。安装成功后。会出现以下界面:
这样Gogs程序就成功安装了。后面可以进行相关配置。比如设置反向代理等。要注意的是设置反向代理。需要使用域名。而不是服务器的IP地址。拥有域名后。只需要更新应用程序的配置文件即可。
/home/git/gogs/custom/conf/app.ini
[server]
DOMAIN = gogs.mydomain.com
HTTP_PORT = 3000
EXTERNAL_URL = http://gogs.mydomain.com:3000/
在此示例中。目标是通过在我们的Web浏览器中键入gogs.mydomain.com来访问该应用程序。配置完成后。便可继续进行反向代理操作。如果使用的是Nginx。则需要将此添加到域的配置文件中。通常的位置是/etc/nginx/sites-available/mydomain.com(将mydomain.com替换为实际域)。
server {
listen 80;
listen [::]:80;root /var/www/gogs.mydomain.com/html;
index index.html index.php index.nginx-debian.html;server_name gogs.mydomain.com www.gogs.mydomain.com;
location / {
proxy_pass http://127.0.0.1:3000;
}
}
本文地址:https://gpu.xuandashi.com/31361.html,转载请说明来源于:渲大师
声明:本站部分内容来自网络,如无特殊说明或标注,均为本站原创发布。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。分享目的仅供大家学习与参考,不代表本站立场!