大家在開發中一般使用的git服務都是公司搭建好的,或者就是直接用gayhub提供的免費的倉庫
如果想搭建一個自己的倉庫的話怎么弄,這里給大家安利一款開箱即用的git托管服務:gogs。
gogs是基於Golang編寫的,占用的資源非常的低,你有個樹莓派就能跑,而且搭建非常容易,接下來開始演示如何搭建。
操作環境:阿里雲ECS服務器配置:單核2GB內存 ;操作系統: CentOs 7 x64
注:本文操作全部基於yum進行安裝,其他操作系統可自行更換對應指令
第一步:安裝git
命令 yum install git
效果如圖
第二步:下載gogs二進制文件
下載地址:https://gogs.io/docs/installation/install_from_binary
選擇linux 64位的安裝包,至於是下載zip還是tar根據自己的喜好,我這下載的tar
命令: wget gogs 文件地址
也可以直接用瀏覽器下載下來再傳到linux服務器上去,我就是這么干的,因為我發現在服務器上直接下載,網速快卡到它姥姥家去了
下載好之后,找一個自己喜歡的文件夾,把gogs的文件解壓到那里,我這里演示直接放到了/home;
命令:
cd /home 切換目錄到/home
tar -xvf gogs_0.11.91_linux_amd64.tar.gz (解壓gogs壓縮包,注意壓縮包名要用自己下載好的,別直接copy我的命令,偷懶一時爽,菊花火葬場)
解壓完以后,會出現一個gogs文件夾,進入到里面,執行命令: ./gogs web
gogs就啟動了,並且監聽了3000端口,此時你訪問3000端口就可以看到頁面
我的服務器已經對外開放了3000端口,直接用ip:3000訪問,會出現gogs的第一次配置頁面,但是我們先不要配置,因為現在是前台啟動模式,只要你的shell一關gogs就關了,所以接下來我們配置
一下后台啟動。
第三步:配置后台運行
我們在 gogs/scrpts/systemd 下找到gogs的服務文件,我這一步一步的進是為了方便讀者閱讀,正常裝的時候可以一步到位
然后我們把這個服務文件放到 /etc/systemd/system下
但是在移動前,我們需要先對這個service文件更改一下,把里面的工作路徑和執行命令改成正確的
WoringDirectory 是你gogs的目錄,ExeStart是服務啟動時會執行的命令,都換成你自己的路徑,用戶我用的root
不知道用哪個用戶用root就對了老弟
然后把這個gogs.service 復制到/etc/systemd/system文件下
執行以下命令
systemctl enable gogs.service
systemctl start gogs
systemctl status gogs
出現下圖說明你已經成功的安裝好了gogs,並且配置好了守護進程,訪問3000端口,會出現之前的頁面
訪問ip+端口3000進入設置頁面,進行gogs的基礎設置
gogs會把你的提交記錄記錄在數據庫中,gogs支持很多數據庫,MySql pgSQL.....,並且自帶了SqlLite,如果你不想裝其他數據庫的直接用默認的sqlLite就行,親民的要死
我這里用的是Mysql ,不知道linux下怎么安裝mysql的可以參考我這篇文章:https://www.cnblogs.com/Tassdar/p/9583790.html
配置好數據庫之后無腦下一步就可以了,安裝好之后的頁面是這樣的
第四步:配置反向代理
直接通過ip+端口這宗方式訪問也不是不行,就是看起來有點low B,所以作為一個專業的程序員,我們還是專業一點,配個域名
首先解析一個二級域名出來 gogs.xiaocui.site
然后安裝nginx
命令:
yum install nginx
systemctl start nginx
systemctl status nginx
出現下圖說明你已經ok了,如果還不行,自行百度。
進到 /etc/nginx 目錄下修改nginx.conf ,配置反向代理
添加一個新的配置節點,或者添加一個新的配置文件都行,看你怎么喜歡怎么來
配置完之后執行 nginx -t 檢查配置文件,如果不是successful,按照報錯內容和行號去檢查問題
然后執行 nginx -s reload 重新加載配置文件
最后訪問域名,完美。