一款極易搭建的自助 Git 服務(wù)施戴。
環(huán)境
centos7:golang+mysqldb+git
1.安裝最新版本git
2.安裝 go語(yǔ)言環(huán)境
#yum -y install go
3.安裝MYSQL5.7(自行安裝)
mysql安裝完成后
這個(gè)mysql不允許簡(jiǎn)單的密碼反浓,所以第三條語(yǔ)句我未執(zhí)行,后面安裝時(shí)候直接用root作為數(shù)據(jù)庫(kù)的用戶(hù)赞哗。gogs推薦使用InnoDB引擎雷则。創(chuàng)建庫(kù)時(shí)候選擇utf8.
systemctlstartmysqld ;
systemctl enable mysqld//開(kāi)啟數(shù)據(jù)庫(kù)服務(wù)
cat /var/log/mysqld.log | grep password//獲得mysql root密碼
mysql_secure_installation//初始化數(shù)據(jù)庫(kù)
使用上一步獲得密碼mysqld -u root -p//登錄mysql
創(chuàng)建gogs數(shù)據(jù)庫(kù),并授權(quán)數(shù)據(jù)庫(kù)權(quán)限
SET GLOBAL storage_engine = ‘InnoDB‘;
CREATE DATABASE gogs CHARACTER ?SET utf8 COLLATE utf8_bin;
此創(chuàng)建數(shù)據(jù)庫(kù)操作也可以等到gogs軟件包下載完成后執(zhí)行 mysql -uroot -p < /gogs/scripts/mysql.sql進(jìn)行g(shù)ogs數(shù)據(jù)庫(kù)創(chuàng)建
GRANT ALL PRIVILEGES ON gogs.*TO‘root’@‘localhost’ IDENTIFIED BY ‘itadmin’;
FLUSH PRIVILEGES;
QUIT懈玻;//SQL語(yǔ)句
安裝配置gogs
//下載軟件包
wget https://dl.gogs.io/0.11.4/linux_amd64.tar.gz
//解壓
tar -zxf linux_amd64.tar.gz; mv gogs /gogs
//倉(cāng)庫(kù)存放地址
mkdir /gogs-repositories
運(yùn)行配置巧婶,啟動(dòng)gogs
/gogs/gogs web &
初次安裝可以直接在瀏覽器輸入
http://localhost:3000/install將域名換成服務(wù)器ip
這樣就能配置自己新建好的數(shù)據(jù)庫(kù)賬號(hào)密碼,以及配置此代碼管理系統(tǒng)的郵件服務(wù)涂乌,是否禁止自主注冊(cè)艺栈,以及設(shè)定管理員賬號(hào)
讓gogs在后臺(tái)啟動(dòng)而不是一致占用終端資源(如果在終端運(yùn)行,一旦終端關(guān)閉湾盒,則整個(gè)網(wǎng)站都會(huì)掛掉)湿右。所以使用screen命令
#screen
#cd /gogs
# ./gogs web(下面加黑字體可以替換該命令)
也可以在/gogs 目錄下新建app.js文件,內(nèi)容如下
console.info('runing...');
var process = require('child_process');
process.exec('/gogs/gogs web',function (error, stdout, stderr) {
? ? if (error !== null) {
? ? ? console.log('exec error: ' + error);
? ? }
? ? console.info(stdout);
});
然后執(zhí)行 ?node app.js命令(前提是安裝了node)
然后同時(shí)按住Crtl + a + d三鍵是screen在后臺(tái)運(yùn)行
查看screen運(yùn)行窗口列表 ? ? ?screen -ls
進(jìn)入screen某個(gè)運(yùn)行窗口 ? ?screen -r 窗口ID號(hào)