前言
這兩天在研究自動化部署,雖然一直在用公司的自動化 Jenkins + Gitlab,不過用到現在不得不說還是很耗記憶體的,對于我自己學習買的1核2G輕量服務器來說負擔真不是一般的大,所以了解到輕量級,功能也實用的搭配 Gogs + Drone 這倆家伙占的記憶體不是一般的小,用起來也是真的爽,就我這小小的服務器也是輕松帶起,安裝方便,特別輕量級,所以就推薦給大家!
推薦點
- 回應時間短,平均100ms左右
- 安裝簡單,功能簡要夠用(對于小團隊,功能太多未必是好事,git版本庫,問題管理,wiki,真的夠了)
- 穩定性沒出過什么問題(使用了大半年)
Gitea 也不錯,有興趣的小伙伴也可以去了解一下,后期有時間也會出一篇它的功能介紹使用
Gogs簡介
Gogs 的目標是打造一個最簡單、最快速和最輕松的方式搭建自助 Git 服務,使用 Go 語言開發使得 Gogs 能夠通過獨立的二進制分發,并且支持 Go 語言支持的 所有平臺,包括 Linux、Mac OS X、Windows 以及 ARM 平臺,Gogs對系統硬體要求極低,你直接可以在樹莓派上搭建它,
專案地址:https://github.com/gogs/gogs
Docker部署安裝Gogs
Gogs我推薦直接用Docker環境下安裝,因為很簡單,只需要兩個命令就行,
- 首先我們需要先下載Gogs的Docker鏡像;
docker pull gogs/gogs
- 下載完成后使用
docker run命令即可運行服務;
docker run -p 30022:22 -p 30080:3000 --name=gogs \
-v /mydata/gogs:/data \
-d gogs/gogs
- 這里我們說下命令中值得注意的地方,
30022對應的是Gogs的SSH服務埠,30080對應的使用Gogs的HTTP服務埠,我們還將容器的資料目錄掛載到了宿主機的/mydata/gogs目錄下,這樣就算我們重新創建容器資料也不會丟失,
溫馨提醒:
購買的騰訊云/阿里云等服務器的需要服務器網站上放開對應的
30022、30080埠,否則是訪問不了的安裝了寶塔面板的小伙伴記得也要放開對應的埠
配置
Gogs資料存盤在資料庫中,因為我們平時都有自己的mysql服務,如果小伙伴們沒安裝mysql也別慌,Gogs自帶了 SQLite3 資料庫,所以都是靈活選擇的
- 安裝完成后,我們第一次訪問Gogs服務會顯示一個設定頁面,訪問地址:http://IP:30080/
- 資料庫設定,我這里設定
Mysql資料庫



使用
前面安裝的時候直接配置了一個賬戶,所以直接登錄即可,如果沒有配置賬戶會先注冊,默認注冊的第一個賬戶是管理員
- 安裝完成后就會自動進入我們的控制面板

一、創建倉庫
- 直接點擊右上角
+號 即可創建新的倉庫,簡單設定下倉庫名稱和可見性來完成創建

- 創建成功后我們就可以像Github和Gitlab一樣上傳我們的代碼了
.然后我們本地通過Git命令加入我們的代碼直接提交、推送,在Gogs里面就可以看到我們提交的代碼了,

二、遷移外部倉庫
- Gogs還提供了從外部倉庫遷移代碼的能力,通過右上角的
+號,然后選擇遷移外部倉庫

- 我以遷移 Gitee 上 的
jeecg-boot專案為例,地址 https://gitee.com/jeecg/jeecg-boot

- 可以看到已經成功遷移了外部倉庫代碼
jeecg-boot

三、 工單管理
-
Gogs的工單管理類似
issues,進入工單管理然后點擊創建工單按鈕來創建一個bug試試 -
首先要進入
標簽管理進行標簽組初始化

- 創建工單完成后顯示效果如下,

關于Gogs訪問速度很慢的問題
-
這里我推薦用
nginx配置代理,快取靜態檔案來進行加速,有域名的小伙伴跟著做吧,確實IP訪問這個速度慢是個痛點, -
因為我的服務器是阿里云的,所以我們要先在域名控制臺新增一個 gogs的子域名,其它服務器同樣的道理,阿里域名決議地址: https://dns.console.aliyun.com/

- 點擊確定就新增好了一個子域名
- 然后安裝nginx并配置域名反向代理我們服務器本地的ip加埠,nginx安裝配置可以參考我的這篇文章:nginx安裝
- 找到我們的nginx目錄并進入nginx的conf檔案夾,vi編輯nginx.conf,新增server代碼
HTTP配置: Nginx-Http配置點我
有證書HTTPS配置: Nginx-SSL配置HTTPS點我
配置好了重啟一下 nginx 我們直接域名訪問gogs就行了,可以看到速度明顯快多了
溫馨提醒:
nginx配置好了記得清理一下瀏覽器快取,不然可能無效

使用記憶體
接下來我們看一下gogs占用的記憶體大小
- docker鏡像大小 不超過
100M

- 記憶體占用大小 可以看到記憶體大約在
72.5MB這個是浮動的,占用了總記憶體(2G記憶體的服務器)的4%左右

轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/292914.html
標籤:其他
下一篇:關于left join優化not in 導致的長時間查詢無資料問題 Using where; Using join buffer (Block Nested Loop)
