为何选择 Gogs ?

我选择了 Gogs 来讲解,主要是出于以下几个原因:

  1. Gogs 是一个轻量化的 Git 服务,对系统占用较小。
  2. Gogs 的功能够用。
  3. Gogs 的安装流程简便。

其中第一点最重要,因为 Gitlab 对系统配置的要求比较高,单是内存这一项就要求大于 4 GB,如果是 2 GB 内存则会直接无法运行,这个要求已经可以淘汰掉一些入门级服务器了。而 Gogs 在 NAS、树莓派、入门级服务器上都可以无压力运行,长期运行也不会影响其他服务。

而且我们介绍的场景也不是多人开发协作,只是个人同步笔记用,不需要过多的开发相关功能,有最基本的 Git 服务和一个便于操作的网页就足够了。

Gogs 的安装过程也比较简单,官方的 Docker 版本基本做到了开箱即用,连数据库都不需要额外配置,有个文件夹存放数据就可以。

如何在图形界面中安装 Docker 版 Gogs

我通常建议通过图形化界面来管理 Docker,这样能够直观看到容器的运行状态,像启动、停止、修改配置这样的操作,都能以最简单的方式完成。

所以先来讲讲在图像界面下如何安装 Docker 版本的 Gogs。

了解 Docker 的关键配置

我们借助 Gogs 顺便了解一下通过 Docker 跑一个服务需要做什么配置。

首先我们找到 Gogs 在 hub.docker.com 中的包:Gogs - Docker Hub 。

根据它下方的文档提示可以得知,Gogs 的必要配置很少,我们根据它的官方配置可以得知,它需要这下面两行核心代码就可以完成部署。

1
2
docker pull gogs/gogs 
docker run --name=gogs -p 10022:22 -p 10880:3000 -v /var/gogs:/data gogs/gogs

如何使用 Gogs

使用 Gogs 创建仓库和 Github 类似,注册账户,创建仓库……图形化界面总是容易让人理解。这里就不再赘述了。

不过有一点需要注意。在完成仓库创建后,我们需要通过 git clone 把仓库下载到本地。往常在 Github 中 git clone 仓库后再尝试 push 时会提示用账号密码登录,然后由服务器判别你是否有这个仓库的更多权限,允许你做进一步的操作。