阿里雲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

相關文章
相關標籤/搜索