CentOS 7 搭建 gogs Git 服务器

CentOS 7 搭建 gogs Git 服务器

本地环境以下:

Linux 系统环境为:CentOS Linux release 7.4.1708 (Core)
MySQL 版本为: mysql Ver 14.14 Distrib 5.7.23, for Linux (x86_64) using EditLine wrapper
Git 版本为: git version 1.8.3.1
Gogs 当前最新版本为:0.11.86

所需软件

安装步骤

  1. 建立用户名为 git 的帐户,用于管理 gitmysql

    sudo adduser git
  2. 切换到 git 用户,并在其帐户所在家目录,下载 Gogslinux

    // 切换到 git 用户
    su git  
    
    // 切换到 git 用户所在家目录
    cd ~  
    
    // 下载 gogs 压缩包
    wget https://dl.gogs.io/0.11.86/gogs_0.11.86_linux_amd64.tar.gz
    
    // 解压缩 (解压缩以后的文件夹名为 gogs )
    tar -zxvf gogs_0.11.86_linux_amd64.tar.gz
  3. 执行 gogs 数据库文件nginx

    // 切换到 /home/git/gogs/scripts 目录
    cd /home/git/gogs/scripts
    
    // 登陆数据库 (这里采用 MySQL )
    mysql -u root -p
    
    // 执行 gogs 数据库脚本文件 
    source mysql.sql
    
    // 测试(执行完了以后能够看到已经建立好了gogs数据库)
    show databases;
  4. 配置与运行git

    • 打开 gogs 文件web

      vim /home/git/gogs/scripts/init/centos/gogs
    • 核对文件信息sql

      19 PATH=/sbin:/usr/sbin:/bin:/usr/bin  
       20 DESC="Gogs"  
       21 NAME=gogs  
       22 SERVICEVERBOSE=yes  
       23 PIDFILE=/var/run/$NAME.pid  
       24 SCRIPTNAME=/etc/init.d/$NAME  
       25 WORKINGDIR=/home/git/gogs      # 仓库地址,能够自行修改
       26 DAEMON=$WORKINGDIR/$NAME  
       27 DAEMON_ARGS="web"  
       28 USER=git     # 若是运行 gogs 不是名为 git 的帐户,则须要修改。 
       
       # 如是用 root 帐户运行 gogs,则这里修改为 root
    • 切换到 root 帐户,而后复制到 /etc/init.d/ 目录下数据库

      // 切换到 root 帐户
      su root
      
      // 将 gogs 文件复制到 /etc/init.d 目录下
      sudo cp /home/git/gogs/scripts/init/centos/gogs /etc/init.d/
    • 增长执行权限vim

      sudo chmod +x /etc/init.d/gogs
    • 复制 servicecentos

      cp /home/git/gogs/scripts/systemd/gogs.service /etc/systemd/system/
    • 开启 gogs 服务浏览器

      service gogs start
    • 运行 gogs web

      // 切换到 gogs 目录
      cd /home/git/gogs
      
      // 运行 gogs web (若是此时 Ctrl + C 关闭掉命令,此时刷新浏览器时,会无内容)
      // 执行命令后,看到有日志输出,则证实启动成功!
      ./gogs web
      
      // 后台运行 gogs
      ./gogs web >/dev/null 2>&1 &
    • 必须开启 3000 端口 (我使用的是阿里云的 ECS ,直接在阿里云后台添加 3000 的安全组规则便可)
    • 测试。( 浏览器访问 http:// 远程主机 IP 地址 :3000 )
  5. 配置反向代理

    • 在 nginx 配置文件夹中,新建 git.drling.xin.conf 文件

      vim /etc/nginx/conf.d/git.drling.xin.conf
    • 填入如下内容

      server {
      
          listen 80;
          server_name git.drling.xin;
          location / {
                  proxy_pass http://127.0.0.1:3000/;
          }
      
      }
相关文章
相关标签/搜索