阿里云ECS搭建gogs(Ubuntu16.04)

前言

因为我的阿里云服务器是只有1核和512MB内存最“顶级”的配置。安装和配置gitlab做版本管理的话至少需要4GB,即便我搞了4G的SWAP分区也不行。
在gitlab的配置过程中不只一次把我搞死,所以在请教大神的意见后,转而搭建gogs。这个比gitlab需要的资源少多了,下面把安装和配置的过程讲述一下。

安装配置详细过程

① 下载&安装go和gogs

这里先在根目录下创建一个叫web_gogs的文件夹,专门存放wget命令下载的网络资源。
创建并进入该文件下并安装go语言,采用源码安装的方式,下载go语言的包

wget https://www.golangtc.com/static/go/1.9.2/go1.9.2.linux-amd64.tar.gz

和gogs的包

wget https://dl.gogs.io/0.11.43/gogs_0.11.43_linux_amd64.tar.gz

这时候web_gogs目录下就有go1.9.2.linux-amd64.tar.gzgogs_0.11.43_linux_amd64.tar.gz

在这里插入图片描述
接下来把这两个包分别解压到/usr/lib(个人喜好,你也可以安装到别的目录,只要改环境变量就可以了)目录下

tar -C /usr/lib -xzf go1.9.2.linux-amd64.tar.gz
tar -C /usr/lib -xzf gogs_0.11.43_linux_amd64.tar.gz

② 配置环境变量

下载并解压go和gogs后,需要额外配置一下环境变量,从而使得go和gogs都在系统的PATH中,方便全局用户的使用:

这里我修改了/etc/profile, 或者在root用户下修改~/.bashrc

编辑vim /etc/profile
在文件末尾插入内容

export GOROOT=/usr/lib/go
export GOPATH=/usr/lib/gogs
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

然后输入source命令使新增的环境变量立即生效,不然要重启才有用。

source /etc/profile

注意: GOROOT是指go语言源码所在的位置,GOPATH是指gogs源码所在的位置. 然后测试go语言是否安装成功。输入“go env”或“go version”,如果一切正常,应该分别显示GO语言的环境变量和go语言版本信息了。

③ 启动gogs前的准备

在下面操作之前先更新源:apt-get update
1. 安装git
apt-get install git
2. 安装mysql
apt-get install mysql-server
需要在安装的期间自己设置数据库密码。然后在运行gogs之前,要先创建一个数据库,这里创建一个叫gogs的数据库。

先登录数据库
mysql -u root -p
然后输入你的数据库密码,回车。
设置数据库引擎
SET GLOBAL default_storage_engine = 'InnoDB';
然后创建数据库gogs表
CREATE DATABASE gogs CHARACTER SET utf8 COLLATE utf8_bin;

ok,现在就可以启动gogs了,进入/usr/lib/gogs
然后运行就可以了: ./gogs web
3. 打开安全组端口3000
注意,因为gogs默认的端口是3000,所以我们需要在阿里云管理平台的安全组中把3000打开:
其中优先级随便选一个就行,1是最高,100最低。
在这里插入图片描述

最后,还需要去/usr/lib/gogs/custom/conf/app.ini修改ROOT_URL的http地址为服务器的公网地址,而不要是localhost,这样我们就可以从外网连上这个服务器,并做版本控制了。
在这里插入图片描述

④ 搞定

这就基本上搞定了,可以自己注册账号玩了,哈哈。
在这里插入图片描述

⑤ 额外说明

  • gogs默认限制上传文件大小为3MB,这显然不够用。设置的时候需要到/usr/lib/gogs/custom/conf/app.ini里面,建一个如下的内容即可:
[repository]
ROOT = /root/gogs-repositories
[repository.upload]
FILE_MAX_SIZE = 1024 (单位是MB)

参考资料

[1] Ubuntu 16.04 gogs环境搭建

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: Age of Ai 设计师:meimeiellie 返回首页