使用gogs搭建git私有仓库,类似github,gitlab

字数 316阅读 825

自己搭建一个Git仓库,类似github的样子,本来我是想搞个gitlab的,无奈机器配置不够,选择了一款轻量级的开源软件gogs,号称在树莓派上都可以跑起来。

github地址:https://github.com/gogits/gogs

搭建gogs

我的机器环境:centos 7

1.安装git

  yum install git

2.安装mysql

gogs的数据存在mysql中,需要安装一个mysql来存数据,当然也有其他的选择,比如sqllite。

mysql安装:
https://www.jianshu.com/p/3999700a41cd

安装好mysql后:

登录到mysql
mysql -uroot -p

SET GLOBAL storage_engine = 'InnoDB';
CREATE DATABASE gogs CHARACTER SET utf8 COLLATE utf8_bin;
GRANT ALL PRIVILEGES ON gogs.* TO ‘root’@‘localhost’ IDENTIFIED BY 'xxxx';
FLUSH PRIVILEGES;
QUIT;
## xxxx是密码

3.安装nginx

gogs的默认web页面是在3000端口,可以通过nginx来做一个转发,这样直接ip就可以访问了。

server {
        listen 80;
        server_name  ip;//ip或者域名
        location / {
                proxy_pass http://127.0.0.1:3000/;
        }
}

4.安装gogs

1.创建git用户

useradd git
passwd git设置密码

2.下载解压gogs

切换到git用户

su git

cd 

wget https://dl.gogs.io/0.11.4/linux_amd64.zip
# unzip 命令不可用的话需先安装
unzip linux_amd64.zip

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  #修改对应用户

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/

5.启动

systemctl start gogs.service 

访问ip:3000,也可以用nginx做一个反向代理

配置gogs

修改数据库的配置,ip地址啊,开放注册,管理员设置等


捕获.PNG

配置完成后

可以把它理解为一个简单的github来用。还是不错的

捕获.PNG

修改配置

编辑/home/git/gogs/custom/conf/app.ini即可

推荐阅读更多精彩内容