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.86mysql
sudo adduser git
// 切换到 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
// 切换到 /home/git/gogs/scripts 目录 cd /home/git/gogs/scripts // 登陆数据库 (这里采用 MySQL ) mysql -u root -p // 执行 gogs 数据库脚本文件 source mysql.sql // 测试(执行完了以后能够看到已经建立好了gogs数据库) show databases;
配置与运行linux
vim /home/git/gogs/scripts/init/centos/gogs
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 帐户 su root // 将 gogs 文件复制到 /etc/init.d 目录下 sudo cp /home/git/gogs/scripts/init/centos/gogs /etc/init.d/
sudo chmod +x /etc/init.d/gogs
cp /home/git/gogs/scripts/systemd/gogs.service /etc/systemd/system/
service gogs start
// 切换到 gogs 目录 cd /home/git/gogs // 运行 gogs web (若是此时 Ctrl + C 关闭掉命令,此时刷新浏览器时,会无内容) // 执行命令后,看到有日志输出,则证实启动成功! ./gogs web // 后台运行 gogs ./gogs web >/dev/null 2>&1 &
必须开启 3000 端口 (我使用的是阿里云的 ECS ,直接在阿里云后台添加 3000 的安全组规则便可)nginx
测试。( 浏览器访问 http:// 远程主机 IP 地址 :3000 )git
配置反向代理web
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/; } }