1. 程式人生 > >阿里雲ECS搭建gogs(Ubuntu16.04)

阿里雲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,這樣我們就可以從外網連上這個伺服器,並做版本控制了。
在這裡插入圖片描述

④ 搞定

這就基本上搞定了,可以自己註冊賬號玩了,哈哈。
在這裡插入圖片描述

參考資料

[1] Ubuntu 16.04 gogs環境搭建