Gogs是一種開放源代碼的自託管Git服務。使用Go語言開發使得Gogs能夠通過獨立的二進制分發,支持Go語言支持的所有平臺,包括 Linux、mcOS、Windows 以及ARM 平臺。那麼如何在Linux CentOS 7上安裝配置Gogs程序呢?下面一起來看下相關解說。
相關環境:這裏以RAKsmt美國服務器爲例,系統選用的是CentOS 7。
Git服務器端和客戶端.8.3或更高版本,使用以下命令安裝。
yum instll -y git
MySQL(5.7版或更高版本)/ MiDB(0.2版或更高版本)
PostgeSQL(版本9.4.4或更高版本)
SQLite3
#下載gogs安裝包
wget https://dl.gogs.io/0..86/gogs_0..86_linux_md64.t.gz
#如果提示未找到wget命令,可以使用yum安裝
yum instll -y wget
#解壓文件
t -xzf gogs_0..86_linux_md64.t.gz
#創建git用戶
usedd git
#將gogs安裝包所有者改爲git
chown -R git:git /gogs
#oot登錄mysql
mysql -uoot -p密碼
#創建gogs數據庫
cete dtbse gogs defult chset utf8 collte utf8_genel_ci;
#創建gogs用戶並授予該用戶gogs數據庫的全部權限
GRANT ALL PRIVILEGES ON gogs.* TO ̺gogs̻@̻%̻ IDENTIFIED BY ̺23456̻;
#刷新權限
flush piileges;
#gogs安裝路徑
cd /gogs
#運行gogs
#默認端口啓動
su git
./gogs web
#指定端口啓動
su git
./gogs web –pot 300
使用這種方法屬於前臺啓動,如果關閉終端會自動退出,也可以採用後臺啓動方法。
#設置開機自啓
#將gogs的啓動腳本複製到/etc/init.d/路徑下:
#gogs自己提供了默認的啓動腳本,在gogs安裝包的scipts/init/路徑下,可以根據自己的操作系統選擇不同的腳本
cp /gogs/scipts/init/centos/gogs /etc/c.d/init.d/
#編輯啓動腳本
im /etc/init.d/gogs
#修改啓動腳本的GOGS_HOME和GOGS_USER,它們分別是gogs的安裝路徑和gogs的啓動用戶,例如在本例中將GOGS_HOME 改爲/home/gogs,GOGS_USER改爲git
#/etc/init.d路徑
cd /etc/init.d
#給啓動腳本賦予可執行權限
chmod +x gogs
#啓動gogs
seice gogs stt
#關閉gogs
seice gogs stop
#重啓gogs
seice gogs estt
#將gogs設置爲開機自啓動
chkconfig gogs on
#檢查是否加入成功
chkconfig Rlist gogs
如果默認3000端口已經被其他端口占用的話,使用後臺啓動的方式是無法正常啓動的,因爲在未進行前端安裝的情況下,後臺啓動無法指定端口,只能在前端安裝gogs之後纔會生成相應的配置文件。
您可使用服務器的IP地址(http:// See_IP:3000 )通過Web瀏覽器訪問首次運行的配置設置。將自動如下安裝界面,填寫相關配置信息。
信息填寫完畢,安裝成功後,會出現以下界面:
這樣Gogs程序就成功安裝了,後面可以進行相關配置,比如設置反向代理等。要注意的是設置反向代理,需要使用域名,而不是服務器的IP地址,擁有域名後,只需要更新應用程序的配置文件即可。
/home/git/gogs/custom/conf/pp.ini [see] DOMAIN = gogs.mydomin.com HTTP_PORT = 3000 EXTERNAL_URL = http://gogs.mydomin.com:3000/
在此示例中,目標是通過在我們的Web瀏覽器中鍵入gogs.mydomin.com來訪問該應用程序。配置完成後,便可繼續進行反向代理操作。如果使用的是Nginx,則需要將此添加到域的配置文件中。通常的位置是/etc/nginx/sites-ilble/mydomin.com(將mydomin.com替換爲實際域)。
see { listen 80; listen [::]:80;
oot //www/gogs.mydomin.com/html; index index.html index.php index.nginx-debin.html;
see_nme gogs.mydomin.com www.gogs.mydomin.com;
loction / { poxy_pss http://27.0.0.:3000; } }