初體驗之開源Git服務Gogs

寒露君發表於2018-11-08

gogs搭建教程

  • 是否覺得Gitlab吃記憶體?是否覺得高富帥和屌絲直接差的是伺服器配置?推薦一款開源的git伺服器Gogs,從此翻身做富帥;
  • Gogs具有佔用記憶體小,速度快,併發高的特點;1核2G雲伺服器穩穩帶起;

初體驗之開源Git服務Gogs

初體驗之開源Git服務Gogs


在我體驗完Gogs給我帶來的快感以後,不得不說go是門迷人的語言;
廢話不多說,開始我們的安裝教程;

gogs宗旨

Gogs 的目標是打造一個最簡單、最快速和最輕鬆的方式搭建自助 Git 服務。使用 Go 語言開發使得 Gogs 能夠通過獨立的二進位制分發,並且支援 Go 語言支援的 所有平臺,包括 Linux、Mac OS X、Windows 以及 ARM 平臺;

安裝教程

我採用的是二進位制安裝,更多安裝見官方教程

  • 登入伺服器,選擇下載目錄

初體驗之開源Git服務Gogs

  • 下載tar包,並解壓
wget https://dl.gogs.io/0.11.66/gogs_0.11.66_linux_amd64.tar.gz

tar -zxvf gogs_0.11.66_linux_amd64.tar.gz

複製程式碼

初體驗之開源Git服務Gogs

  • 在gogs同級目錄建立/custom/conf/app.ini目錄

原因見官方說明

mkdir -p custom/conf

vim custom/conf/app.ini

複製程式碼

初體驗之開源Git服務Gogs

  • 設定 custom/conf/app.ini 以便覆蓋原有配置

詳情配置見app.ini

因為我自定義資料配置,所以我在app.ini裡新增了以下配置,其他的暫時採用預設的,等安裝完畢後再定義;

[database]
USER = gogs
PASSWD = ******

複製程式碼

初體驗之開源Git服務Gogs


  • 為gogs建立mysql庫及建立使用者和授權

官方mysql建議版本5.7以上

附帶lamp指令碼可安裝mysql

建立gogs庫

mysql -uroot -p
create database gogs;

複製程式碼

建立使用者並授權

create user 'gogs'@'localhost' identified by 'password';
grant all privileges on gogs.* to gogs;
flush privileges;

複製程式碼

  • 配置nginx

nginx 安裝教程;官方安裝教程,寶塔安裝

server {

        listen       80;
        
        server_name  你的域名;
        
        location / {
            index index.html;
            proxy_pass http://127.0.0.1:3000; # gogs預設是3000埠,不建議修改,請開啟3000的防火牆
            proxy_set_header X-real-ip $remote_addr;
              proxy_set_header Host $http_host;
        }

複製程式碼

  • 後臺啟動gogs
cd /usr/local/gogs

nohup ./gogs web &

複製程式碼
  • 啟動後訪問網站並安裝
http://ip/install

複製程式碼

初體驗之開源Git服務Gogs

初體驗之開源Git服務Gogs


  • gogs 支援從外部遷移倉庫

可從碼雲、github上遷移程式碼

初體驗之開源Git服務Gogs

  • install安裝完成後需要個性化配置,需要根據手冊編輯之前建立的custom/conf/app.ini

效果圖演示請見gogs演示

gogs官網地址 gogs幫助文件地址

相關文章