Gogs简介

Gogs是一款极易搭建的自助Git服务,使用Go语言开发,只要Go语言支持的平台它都支持,包括Linux、Mac OS X、Windows以及ARM平台。Gogs对系统硬件要求极低,你甚至可以在树莓派上搭建它

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

1、安装

Gogs在Docker环境下的安装非常简单,只需要两个命令即可,推荐使用该方式来进行安装。

  • 首先我们需要先下载Gogs的Docker镜像;
docker pull gogs/gogs


  • 下载完成后使用docker run命令即可运行服务
docker run -p 10022:22 -p 10080:3000 --name=gogs \
-v /mydata/gogs:/data \
-d gogs/gogs


  • 这里我们说下命令中值得注意的地方,
  • 10022对应的是Gogs的SSH服务端口,
  • 10080对应的使用Gogs的HTTP服务端口,
  • 我们还将容器的数据目录挂载到了宿主机的/mydata/gogs目录下,这样就算我们重新创建容器数据也不会丢失。
2、配置
  • 安装完成后,我们第一次访问Gogs服务会显示一个设置页面,访问地址:http://192.168.56.10:10080/
  • 数据库设置,这里我们直接使用内置的SQLite3数据库即可,使用其他的需要自行搭建数据库;

Docker 容器搭建Gogs私服仓库_数据库

  • 应用基本设置,主要修改域名、SSH端口号和应用URL即可

Docker 容器搭建Gogs私服仓库_docker_02

3、使用

3.1、注册

  • 配置好以后会直接跳转到登录界面,首先注册一个帐户;

Docker 容器搭建Gogs私服仓库_服务端_03

  • 注册完成后,登录即可进入控制面板页面。

Docker 容器搭建Gogs私服仓库_服务端_04

3.2、创建仓库

  • 直接使用我的仓库右侧的加号即可创建仓库,简单设置下仓库名称和可见性来完成创建

Docker 容器搭建Gogs私服仓库_docker_05

  • 创建成功后直接使用克隆地址即可克隆该仓库;

Docker 容器搭建Gogs私服仓库_docker_06

  • 我们可以直接使用IDEA的Git检出功能;

Docker 容器搭建Gogs私服仓库_docker_07

  • 检出完成后,加入我们的代码直接提交、推送,在Gogs里面就可以看到我们提交的代码了。

3.3、工单管理

  • 这里的工单管理,有点类似Github上面的Issue的功能,我们可以通过创建工单按钮来创建;

Docker 容器搭建Gogs私服仓库_git_08

  • 输入我们的标题、内容和标签以后即可创建;

Docker 容器搭建Gogs私服仓库_docker_09

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

Docker 容器搭建Gogs私服仓库_git_10

3.4、添加用户

  • 有时候管理员需要新建一些帐户来协作开发,此时我们只要点击 头像->管理面板->用户管理 即可打开用户管理界面;

Docker 容器搭建Gogs私服仓库_数据库_11

  • 然后点击创建新的帐户,输入相关信息即可完成创建。

Docker 容器搭建Gogs私服仓库_go语言_12

3.5、管理协作者

  • 创建完成后,我们可以在仓库页面的仓库设置中打开管理协作者功能;

Docker 容器搭建Gogs私服仓库_数据库_13

  • 之后通过输入协作者账户,点击增加新的协作者并设置好权限即可,这样协作者就可以访问并向该仓库提交代码了。

Docker 容器搭建Gogs私服仓库_go语言_14

3.6、迁移外部仓库

Docker 容器搭建Gogs私服仓库_服务端_15

Docker 容器搭建Gogs私服仓库_go语言_16

  • 迁移成功后就可以在Gogs里面看到项目了

Docker 容器搭建Gogs私服仓库_docker_17

4、​​Gogs​​ VS ​​Gitlab​
  • 下面对比下Gogs和Gitlab在安装使用过程中的优缺点,仅代表个人观点。

比较方面

Gogs

Gitlab

Docker镜像大小

44MB

836MB

启动速度

很快,几秒

很慢,机器配置不好要10分钟

配置要求

很低,树莓派都可以

很高,吃内存,吃CPU

访问速度

够快

机器配置好也还可以

功能

功能较少

功能很丰富