低配服务器福音,标星37K+Star开源项目Gogs秒搭Git服务

前言

这两天在研究自动化部署,虽然一直在用公司的自动化 Jenkins + Gitlab,不过用到现在不得不说还是很耗内存的,对于我自己学习买的1核2G轻量服务器来说负担真不是一般的大,所以了解到轻量级,功能也实用的搭配 Gogs + Drone 这俩家伙占的内存不是一般的小,用起来也是真的爽,就我这小小的服务器也是轻松带起,安装方便特别轻量级,所以就推荐给大家!

推荐点

  1. 响应时间短,平均100ms左右
  2. 安装简单,功能简要够用(对于小团队,功能太多未必是好事,git版本库,问题管理,wiki,真的够了)
  3. 稳定性没出过什么问题(使用了大半年)

Gitea 也不错,有兴趣的小伙伴也可以去了解一下,后期有时间也会出一篇它的功能介绍使用

Gogs简介

Gogs 的目标是打造一个最简单、最快速和最轻松的方式搭建自助 Git 服务。使用 Go 语言开发使得 Gogs 能够通过独立的二进制分发,并且支持 Go 语言支持的 所有平台,包括 Linux、Mac OS X、Windows 以及 ARM 平台。Gogs对系统硬件要求极低,你直接可以在树莓派上搭建它。

项目地址https://github.com/gogs/gogs

Docker部署安装Gogs

Gogs我推荐直接用Docker环境下安装,因为很简单,只需要两个命令就行。

  • 首先我们需要先下载Gogs的Docker镜像;
docker pull gogs/gogs
  • 下载完成后使用docker run命令即可运行服务;
docker run -p 30022:22 -p 30080:3000 --name=gogs \
-v /mydata/gogs:/data  \
-d gogs/gogs
  • 这里我们说下命令中值得注意的地方,30022对应的是Gogs的SSH服务端口,30080对应的使用Gogs的HTTP服务端口,我们还将容器的数据目录挂载到了宿主机的/mydata/gogs目录下,这样就算我们重新创建容器数据也不会丢失。

温馨提醒:

购买的腾讯云/阿里云等服务器的需要服务器网站上放开对应的 30022、30080 端口,否则是访问不了的

安装了宝塔面板的小伙伴记得也要放开对应的端口

配置

Gogs数据存储在数据库中,因为我们平时都有自己的mysql服务,如果小伙伴们没安装mysql也别慌,Gogs自带了 SQLite3 数据库,所以都是灵活选择的

  1. 安装完成后,我们第一次访问Gogs服务会显示一个设置页面,访问地址:http://IP:30080/
  2. 数据库设置,我这里设置 Mysql 数据库

image-20210716154522164

image-20210716154712977

image-20210716160056935

使用

前面安装的时候直接配置了一个账户,所以直接登录即可,如果没有配置账户会先注册,默认注册的第一个账户是管理员

  • 安装完成后就会自动进入我们的控制面板

image-20210716160506035

一、创建仓库

  • 直接点击右上角 + 号 即可创建新的仓库,简单设置下仓库名称和可见性来完成创建

image-20210716161012751

  • 创建成功后我们就可以像Github和Gitlab一样上传我们的代码了

image-20210716161243957.然后我们本地通过Git命令加入我们的代码直接提交、推送,在Gogs里面就可以看到我们提交的代码了。

image-20210716163401034

二、迁移外部仓库

  • Gogs还提供了从外部仓库迁移代码的能力,通过右上角的+号,然后选择迁移外部仓库

image-20210716163832471

image-20210716164904239

  • 可以看到已经成功迁移了外部仓库代码 jeecg-boot

image-20210716164945732

三、 工单管理

  • Gogs的工单管理类似 issues ,进入 工单管理 然后点击 创建工单 按钮来创建一个bug试试

  • 首先要进入标签管理 进行标签组初始化

image-20210716165720700

  • 创建工单完成后显示效果如下。

image-20210716165839492

关于Gogs访问速度很慢的问题

  • 这里我推荐用 nginx 配置代理,缓存静态文件来进行加速,有域名的小伙伴跟着做吧,确实IP访问这个速度慢是个痛点。

  • 因为我的服务器是阿里云的,所以我们要先在域名控制台新增一个 gogs的子域名,其它服务器同样的道理,阿里域名解析地址: https://dns.console.aliyun.com/

image-20210809111507012

  • 点击确定就新增好了一个子域名
  • 然后安装nginx并配置域名反向代理我们服务器本地的ip加端口,nginx安装配置可以参考我的这篇文章:nginx安装
  • 找到我们的nginx目录并进入nginx的conf文件夹,vi编辑nginx.conf,新增server代码

HTTP配置: Nginx-Http配置点我

有证书HTTPS配置: Nginx-SSL配置HTTPS点我

配置好了重启一下 nginx 我们直接域名访问gogs就行了,可以看到速度明显快多了

温馨提醒:

nginx配置好了记得清理一下浏览器缓存,不然可能无效

GogsOper

使用内存

接下来我们看一下gogs占用的内存大小

  • docker镜像大小 不超过 100M

image-20210716170304585

  • 内存占用大小 可以看到内存大约在 72.5MB这个是浮动的,占用了总内存(2G内存的服务器)的 4% 左右

image-20210716172212092

### 回答1: GitHub 上标星 115k 是指某个项目在 GitHub 上收到了 11.5 万个星标(Star)。星标是 GitHub 上用户对项目的一种点赞行为,表示对项目的认可和喜爱。 当一个项目被很多用户标星的时候,通常表示这个项目具有一定的影响力,受到了广泛的关注和认可。标星的数量可以作为评估一个项目受欢迎程度的指标之一。 标星数量的增加主要有以下几个原因: 1. 项目本身优秀:如果一个项目具有很高的代码质量、功能完善、易于使用等优点,就会吸引更多的开发者关注并标星。 2. 开发者社区推广:开发者社区对于一个项目的推广非常重要,如果一个项目在社区中得到了推荐和宣传,就会吸引更多的用户关注和标星。 3. 开发者贡献:开源项目常常接受开发者的贡献,如果一个项目有很多活跃的开发者,意味着项目会持续发展和更新,这也会吸引更多的用户关注和标星。 4. 开发者口碑和用户反馈:如果一个项目具有良好的口碑和用户反馈,证明这个项目对用户来说是有价值的,也会吸引更多的用户关注和标星GitHub 上标星 115k 表明这个项目受到了极高的关注和认可。这种关注既可以是因为项目本身的优秀,也可能是因为开发者社区的推广和用户口碑的效应。不过,标星数量并不是唯一的评判标准,我们还需要进一步了解项目的质量、活跃度和用户评价等方面的信息,才能全面评估一个项目的价值。 ### 回答2: GitHub 是全球最大的开源代码托管平台之一,用户可以在平台上发布开源项目,并且其他用户可以对其进行关注(Star)。标星(Star)是 GitHub 上一项重要的功能,用于表示用户对某个项目的喜爱程度或兴趣程度。 在你提到的这个情况中,一个项目在 GitHub 上标星达到 115k 的数量是非常惊人的。这意味着该项目受到了非常广泛的关注和认可,吸引了大量的用户关注和参与。 标星数量的增长通常表明该项目具有出色的代码质量、创新的想法、丰富的功能或对开发者社区有重要的影响。标星数量还能够作为用户评估一个项目质量和受欢迎程度的参考指标。越多的标星数量通常意味着该项目受到更多人的信任和广泛的使用。 标星 115k 的项目往往是在技术方面具有重要意义的项目,也可能是在开发工具、库或框架上具有重要创新的项目。当项目受到如此高的关注时,它不仅会吸引更多的开发者参与贡献代码,也会吸引更多的用户试用和提供反馈。 通过标星数量,我们可以得知这个项目在社区的影响力和认可度。这使得其他开发者能够了解或了解到一些有趣或有价值的项目。同时,对于该项目的维护者来说,标星数量也是对他们工作的认可和鞭策,鼓励他们继续努力改进和维护该项目。 综上所述,GitHub 上一个标星数量达到 115k 的项目无疑是一个备受关注和认可的项目,代表着该项目的质量和影响力。这个数量反映了开发者社区对该项目的认可和信赖程度,证明了该项目在技术领域的重要地位。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值