基于gogs快速搭建企业私有GIT服务
本文系作者 不太自律的程序猿原创,转载请私信并在文章开头附带作者和原文地址链接。
gogs 介绍安装
Gogs 是一款开源的轻量级Git web服务,其特点是简单易用完档齐全、国际化做的相当不错。其主要功能如下:
1. 提供Http 与ssh 两种协议访问源码服务
2. 提供可WEB界面可查看修改源码代码
3. 提供较完善的权限管理功能、其中包括组织、团队、个人等仓库权限
4. 提供简单的项目viki功能
5. 提供工单管理与里程碑管理。
下载安装
官网:gogs.io
下载:gogs.io/docs/instal… 选择 linx amd64 下载安装
安装:
解压之后目录:
运行:
#前台运行
./gogs web
#后台运行
$nohup ./gogs web &
默认端口:3000
初次访问http://:3000 会进到初始化页,进行引导配置。
可选择mysql 或sqlite 等数据。这里选的是sqllite
注:mysql 索引长度的问题没有安装成功,需要用mysql5.7 以上版本
gogs基础配置
邮件配置说明:
邮件配置是用于注册时邮件确认,和找回密码时候的验证邮件发送。其配置分为两步:
第一:创建一个开通了smtp 服务的邮箱帐号,一般用公司管理员邮箱。我这里用的是QQ邮箱。
第二:在{gogs_home/custom/conf/app.ini 文件中配置。
QQ邮箱开通smtp服务
1、点击设置 2、开启smtp 邮件设置
设置文件:{gogs_home/custom/conf/app.ini
ENABLED = true
HOST=smtp.qq.com:465
FROM=tuling2877438881@qq.com
USER=
PASSWD=
ENABLED =true 表示启用邮件服务
host 为smtp 服务器地址,(需要对应邮箱开通smtp服务 且必须为ssl 的形式访问)
from 发送人名称地址
user 发送帐号
passwd 开通smtp 帐户时会有对应的授权码 重启后可直接测试
管理员登录==》控制面版==》应用配置管理==》邮件配置==》发送测试邮件
gogs定时备份与恢复
备份与恢复:
#查看备份相关参数
./gogs backup -h
#默认备份,备份在当前目录
./gogs backup
#参数化备份 --target 输出目录 --database-only 只备份 db
./gogs backup --target=./backupes --database-only --exclude-repos
#恢复。执行该命令前要先删除 custom.bak
./gogs restore --from=gogs-backup-20180411062712.zip
#自动备份脚本
#!/bin/sh -e
gogs_home="/home/apps/svr/gogs/"
backup_dir="$gogs_home/backups"
cd
dirname $0
#执行备份命令
./gogs backup --target=$backup_dir
echo 'backup sucess'
day=7
#查找并删除 7天前的备份
find $backup_dir -name '*.zip' -mtime +7 -type f |xargs rm -f;
echo 'delete expire back data!'
#添加定时任务 每天4:00执行备份
#打开任务编辑器
crontab -e
#输入如下命令 00 04 * * * 每天凌晨4点执行 do-backup.sh 并输出日志至 #backup.log
00 04 * * * /home/apps/svr/gogs/do-backup.sh >> /home/apps/svr/gogs/backup.log 2>&1
客户端公钥配置与添加
Git配置
#Git安装完之后,需做最后一步配置。打开git bash,分别执行以下两句命令
git config --global user.name “用户名”
git config --global user.email “邮箱”
#git 自动记住用户和密码操作
git config --global credential.helper store
SSH公钥创建
1、打开git bash
2、执行生成公钥和私钥的命令:ssh-keygen -t rsa 并按回车3下
3、执行查看公钥的命令:cat ~/.ssh/id_rsa.pub
4、拷贝id_rsa.pub 内容至至服务~~/.ssh/authorized_keys 中
感谢诸君的观看,文中如有纰漏,欢迎在评论区来交流。如果这篇文章帮助到了你,欢迎点赞👍关注。
转载自:https://juejin.cn/post/7104670719660785671