手把手教你使用gogs搭建git私有倉庫


本來想在 Github 上建一個私倉,但是發現只能設置 3 個貢獻者。

國內的碼雲也只能設置 5 個。

無意間看到了使用 gogs 可以搭建私服,正好手頭有空閑的服務器,於是開干!

https://gogs.io/

gogs

1、安裝 git

yum install git

2、安裝MySQL

安裝過程省略。

安裝后登錄 MySQL 進行如下配置:

create database gogs default character set utf8mb4 collate utf8mb4_unicode_ci;

# 這里我新建了一個用戶用來訪問gogs數據庫
CREATE USER 'pig'@'%' IDENTIFIED BY 'xxxx';
GRANT ALL ON gogs.* TO 'pig'@'%';

3、安裝gogs

3.1 創建git用戶

建議使用 git 用戶,因為 gogs 配置文件默認使用的 git 用戶。

useradd git
passwd git設置密碼

3.2 下載解壓gogs

su git
cd 

wget https://dl.gogs.io/0.11.29/linux_amd64.zip
# unzip 命令不可用的話需先安裝
unzip linux_amd64.zip

3.3 配置gogs

vim /home/git/gogs/scripts/init/debian/gogs

PATH=/sbin:/usr/sbin:/bin:/usr/bin
DESC="GoGs Git Service"
NAME=gogs
SERVICEVERBOSE=yes
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
WORKINGDIR=/home/git/gogs #根據自己的目錄修改
DAEMON=$WORKINGDIR/$NAME
DAEMON_ARGS="web"
USER=git  #修改對應用戶

3.4 切回root,拷貝文件和服務

#拷貝到init.d下
cp /home/git/gogs/scripts/init/debian/gogs /etc/init.d/
#添加可執行權限
chmod +x /etc/init.d/gogs
#拷貝service
cp /home/git/gogs/scripts/systemd/gogs.service /etc/systemd/system/

3.5 啟動

systemctl start gogs.service 

4、配置 gogs

此時,使用 ip:3000 就可以訪問了

P.S. 阿里雲的坑

阿里雲的主機默認是無法訪問 3000 端口的,解決方法

① 登錄到阿里雲控制台,進入到自己的雲主機管理頁面

② 點擊『防火牆』

防火牆

③ 添加 3000 端口的訪問規則

添加訪問規則

確定,然后就可以繼續訪問之前的頁面了。

第一次訪問 Gogs,瀏覽器進入安裝頁面,如圖所示填寫字段

數據庫配置

其他配置

點擊 install gogs,安裝成功以后會直接進入 gogs 首頁,在這里可以注冊或者登錄,完全像是一個正常的網站。

若在安裝頁面沒有配置管理員,那么第一個注冊的用戶默認自動變成管理員,之后注冊的用戶都是普通用戶。

配置文件詳解

配置文件位於:

/home/git/gogs/custom/conf/app.ini

其中參數的詳細解釋可以看官網:https://gogs.io/docs/advanced/configuration_cheat_sheet

禁止用戶注冊

為了系統安全性,考慮禁止用戶注冊,只能由管理員創建帳號。

將參數 DISABLE_REGISTRATION 設置為 true。

DISABLE_REGISTRATION = true

此時需要在頁面進行創建賬號:

管理面板

創建賬號

至此,基於 gogs 的 Git 私倉搭建基本完畢。


參考:

https://www.jianshu.com/p/63206dad0afa
https://blog.csdn.net/qq_22638399/article/details/80658196
https://zhuanlan.zhihu.com/p/30798837
https://www.jianshu.com/p/28e8aa8f9ec4


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM