阿里云ubuntu14.4上部署gogs

之前曾经在centos上部署了gitlab,但由于买的配置比较低,实际效果并不理想,常常卡机。并且,gitlab配置至关麻烦,须要依赖不少被墙包支持。最近在用golang搞开发,顺道发现了gogs这款git管理系统,听说通过长期迭代已经足够稳定了,因此也想试一试效果,毕竟golang以效率著称,想必对系统要求也会很低很低。下面介绍一下此次成功的配置经历。html

 

本文配置项目

nginxmysql

mysqllinux

gitnginx

gogs gogs v0.9.97 @ 2016-09-01git

 

先简单说一下基本步骤

gogs有两种安装方案,第一种是使用二进制安装,这种最简单,配置好git环境、运行二进制文件就能搞定;第二种是编译源码,搭建好环境,再安装好golang语言开发环境和其余须要用到的包,最后本身编译。golang

其实二者区别不大,通常使用建议第一种方案便可搞定。第二种方案主要用于特殊系统环境、二次修改开发。web

两种方案都须要这些步骤进行:sql

一、安装git、nginx作反向代理解析域名、可选安装mysql数据库。数据库

二、创建git帐户。vim

三、下载gogs二进制文件,运行配置完成。

 

下面详细介绍安装步骤

一、安装git包,并建立git帐户。下面以“git”用户为例。

# 安装git
sudo apt-get install -y git
# 建立git帐户
sudo adduser git

二、安装nginx,安装mysql,或不安装任何数据库。

    PS:最新的“gogsv 0.9.97 @ 2016-09-01”版本支持mysql、psql、sqlite。

sudo apt-get install -y nginx
sudo apt-get install -y mysql

三、在git帐户的“/home/git”目录下,建立gogs安装目录、git库存储目录。

    PS:由于gogs运行须要以git帐户进行,因此同时须要gogs目录和git库目录的权限,最好放到git的帐户目录下。

四、下载gogs的linux二进制安装包,将其放入$HOME/git/gogs目录下。

gogs v0.9.97 @ 2016-09-01下载地址:

https://dl.gogs.io/gogs_v0.9.97_linux_amd64.tar.gz

http://7d9nal.com2.z0.glb.qiniucdn.com/gogs_v0.9.97_linux_amd64.tar.gz

五、进入$HOME/git/gogs,运行gogs二进制文件。

# 进入gogs目录
cd /home/git/gogs
# 启动gogs web服务
./gogs web

    PS:该方式是直接运行gogs,但关闭终端后就失效了。因此稍后还须要将运行脚本放入/etc/init.d目录下,再使其实现自运行。

六、浏览器访问“http://站点IP:3000”,根据要求填写配置信息。完成后就能够经过http://IP地址:3000访问到gogs服务了。下面将gogs服务加入到开机自启动,并解析到子域名上。

    PS:若是发现端口冲突,能够在“/home/git/gogs/custom/conf/app.ini”文件内修改端口配置。

七、完成后,将“/home/git/gogs/scripts/init/debian/gogs”文件放入“/etc/init.d”下,以后就可使用service gogs命令了。

# 复制脚本到init.d目录
sudo cp /home/git/gogs/scripts/init/debian/gogs /etc/init.d
# 运行服务
service gogs start

八、设置开机自启动。

# vim打开rc.local,添加开机运行脚本
sudo vim /etc/rc.local
# nginx服务器
service nginx start
# mysql服务
service mysql start
# gogs服务
service gogs start

九、在nginx内配置反向代理,将子域名解析到localhost:3000上。

# nginx站点设定
server {
    server_name xx.localhost.com;
    listen 80;
    location / {
        proxy_pass http://localhost:3000/;
    }
}

十、配置完成。

 

FAQ

* git库地址都是localhost?

配置完成后,能够在gogs配置文件中将项目地址改成“域名:3000”,便可搞定。注意nginx反向代理设定要跟着改变。

 

参考

gogs官方二进制安装方法

https://gogs.io/docs/installation/install_from_binary.html

Ubuntu1404安装gogs过程

http://www.cnblogs.com/ddr888/archive/2016/01/14/5131028.html

使用 Gogs 搭建本身的 Git 服务器

https://mynook.info/blog/post/host-your-own-git-server-using-gogs

相关文章
相关标签/搜索