環境要求
數據庫(選擇以下一項):
- MySQL:版本 >= 5.7
- PostgreSQL
- MSSQL
- TiDB(實驗性支持,使用 MySQL 協議連接)
- 或者 什麼都不安裝 直接使用 SQLite3
git(bash):
- 服務端和客戶端均需版本 >= 1.7.1
- Windows 系統建議使用最新版
SSH 服務器:
- 如果您只使用 HTTP/HTTPS 的話請忽略此項
- 如果您選擇在 Windows 系統使用內置 SSH 服務器,請確保添加 ssh-keygen 到您的 %PATH% 環境變量中
- 推薦 Windows 系統使用 Cygwin OpenSSH 或 Copssh
- Windows 系統 請確保 Bash 是默認的 Shell 程序,而不是 PowerShell
安裝數據庫
請根據您的選擇進行安裝:
- MySQL(引擎:INNODB)
- PostgreSQL
注意事項 您可以使用 etc/mysql.sql 來自動創建名爲 gogs 的數據庫。如果您選擇手動創建,請務必將編碼設置爲 utf8mb4。
安裝客戶端
yum -y install git
下載二進制包
https://gogs.io/docs
wget https://dl.gogs.io/0.11.34/linux_amd64.tar.gz
所有版本的安裝包都在:https://gogs.io/docs/installation/install_from_binary
解壓
tar -xzf linux_amd64.tar.gz -C /
我們的程序放在了 /gogs
創建git用戶
adduser git
//創建用戶 git
passwd git
//設置密碼
創建用戶組
groupadd git
將用戶git加入用戶組git
usermod -G git git
移動gogs目錄
//移動
mv /gogs /home/git/gogs
設置自動啓動
cd /lib/systemd/system
vim gogs.service
加入以下內容
[Unit]
Description=Gogs
After=syslog.target
After=network.target
After=mysqld.service
[Service]
# Modify these two values and uncomment them if you have
# repos with lots of files and get an HTTP error 500 because
# of that
###
#LimitMEMLOCK=infinity
#LimitNOFILE=65535
Type=simple
User=git
Group=git
WorkingDirectory=/home/git/gogs
ExecStart=/home/git/gogs/gogs web
Restart=always
Environment=USER=git HOME=/home/git
[Install]
WantedBy=multi-user.target
啓用服務
systemctl enable gogs.service
啓動服務
systemctl start gogs
查看狀態
systemctl status gogs
curl 測試一下,是否正常
curl http://127.0.0.1:3000
出現<a href="/install">Found</a>.
,就說明已經成功。
如果服務器已經啓動成功,用IP加端口訪問失敗,檢查防火牆。把端口添加到防火牆,重新訪問既可。
添加
firewall-cmd --zone=public --add-port=3000/tcp --permanent
重新載入
firewall-cmd --reload
查看
firewall-cmd --zone=public -query-port=3000/tcp
用本機Ip加端口進行訪問
到這裏gogs的git就搭建完畢